访问专用功能时出错。来自Public Func。在一个班级里面

时间:2017-12-05 16:22:55

标签: php

我有以下类结构。运行post()函数时,收到错误Uncaught Error: Call to undefined function curl_post()

class POST {

    private function encode($data) {
    }

    private function curl_post($data) {
        encode($data);
    }

    public function post($data) {
        $post = curl_post($data);
        print_r($post);
    }
}

导致此错误的原因是什么?我是否必须使用$this->之类的内容来访问私有函数?

1 个答案:

答案 0 :(得分:2)

要调用同级对象方法,请在调用前添加$this->

class POST {

    private function encode($data) {
    }

    private function curl_post($data) {
        $this->encode($data);
    }

    public function post($data) {
        $post = $this->curl_post($data);
        print_r($post);
    }
}

来自documentation

  

当从对象上下文中调用方法时,伪变量$ this可用。 $ this是对调用对象的引用(通常是方法所属的对象...