如何从第三个函数中调用两个函数

时间:2018-04-06 07:04:43

标签: php

我创建了一个名为User.php的页面,我在其中创建了三个公共函数:

public function createUser() {
    // to insert the data of the user into a database
}

public function AddRole() {
    // to insert the role of the new created user into the same database but of course another table
}

public function register(){ //to call the first two function    
    $conn = getConn();
    createUser();
    AddRole();
}

然后我从另一个名为registerCtrl.php

的页面调用了函数register()
 $id = $thisUser->register() ;

我收到此错误:

  

致命错误:在第114行的C:\ wamp \ www \ imp \ models \ User.php中调用未定义的函数createUser()

我认为问题在于我在第三个函数中调用两个函数,当然这只是我的观点。 注意:我是编码新手,这是我的第一个软件。 谢谢你们。

2 个答案:

答案 0 :(得分:4)

调用类的成员函数时,需要将其链接到该类的实例,在上述情况下,您要在当前使用的实例上调用它,即this。所以电话应该是......

$this->createUser() ;
$this->AddRole() ;

如果 $conn是一个实例变量,您还需要在其前面添加$this-> ...

$this->conn = $this->getConn();

(还取决于定义getConn()的位置)

答案 1 :(得分:0)

我认为问题是,你没有上课。在PHP中,您可以创建没有类的函数然后您尝试使用Object访问该函数。

尝试包含User.php文件。顶部的registerCtrl.php-File中有require('User.php')include('User.php')。然后使用register();

  

致命错误:在第114行的C:\ wamp \ www \ imp \ models \ User.php中调用未定义的函数createUser() - >这意味着口译员无法找到该功能。