在类内调用函数

时间:2014-06-27 08:41:05

标签: php mysql sql class

我正在尝试用PHP创建一个简单的类,但是我在方法调用时遇到了一些麻烦。

<?php
include('MySQL.php');

class User {

    var $sql;

    function _construct(){
        // SQL connection

        $this->sql = new MySQL(<<hidden>>, <<hidden>>, <<hidden>>);
    }

    public function login($username, $password){
        // TODO
    }
}
?>

//TODO部分,我想拨打$this->sql->select('users')之类的电话,但不会让我这样做。它给出了一个错误,并说sql是一个非对象。

1 个答案:

答案 0 :(得分:3)

你的“_construct”缺少_(你必须有两个),它不会被调用。将其更改为:

public function __construct(){

它应该工作。还记得把它公开。

如果没有调用,则$ sql变量未初始化,实际上是PHP的非对象。

此外,您可以在声明变量时精确确定变量的可见性,而不是使用已弃用的var关键字:

private $sql;