我创建了一个名为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()
我认为问题在于我在第三个函数中调用两个函数,当然这只是我的观点。 注意:我是编码新手,这是我的第一个软件。 谢谢你们。
答案 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() - >这意味着口译员无法找到该功能。