我刚开始使用OOP PHP并遇到问题。我已经成立了一个通用的MySQL类,允许我连接到一个数据库,并具有一定的功能,从表中获得记录:PHP OOP:如何在其他类中使用通用MySQL类
class mysql{
//some lines to connect, followed by:
public function get_record($sql)
{
$result = mysql_result(mysql_query($sql));
return $result;
//obiously it's a bit more advanced, but you get the picture.
}
}
接下来,我有一个类来获得用户的详细信息:
class user{
__construct($id)
{
$this->id = $id
}
public function get_username($id)
{
$username = get_record("SELECT name FROM users WHERE id = '".$this->id."'");
return $username;
}
}
我试过这个,但得到了函数get_record未知的错误。我通过添加$ mysql = new mysql()来解决这个问题。到用户类。
但是,为每个使用我的数据库方法的类实例化mysql对象感觉效率很低(几乎所有这些方法都是这样)。
是否有办法让所有其他类都可以访问mysql类及其方法,而无需在每个方法中调用mysql类?
请不要创建MySQL的类。即使PHP已经内置了这样的东西,也有太多的人在使用。它被称为PDO(PHP数据库对象)。 PDO可以转让给其他开发人员,同时必须一次又一次找出其他人的MySQL级别感觉毫无意义。 – kander 2011-01-06 21:25:24