在类的构造函数中进行数据库查询以便在创建它的新实例时加载它是不好的做法吗?
class Home
{
private $home_id = null;
private $home_name = null;
private $home_number = null;
private $home_street = null;
function __construct($home_id)
{
$do_query = $mysql_con->query("SELECT * FROM home WHERE home_id = '$home_id'");
while ($home_data = $do_query->fetch_assoc())
{
// Set all of the items in the object
$this->home_id = $home_data["home_id"];
$this->home_name = $home_data["home_name"];
$this->home_number = $home_data["home_number"];
$this->home_street = $home_data["home_street"];
}
}
}
之前有人告诉我,在构造函数中创建一个构建对象的查询可能是不好的做法。
- 如果这是不好的做法,为什么是不好的做法?
- 什么是替代方案?