クラスの新しいインスタンスを作成するときにクラスをロードするために、クラスのコンストラクターにデータベースクエリを含めるのは悪い習慣ですか?
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"];
}
}
}
コンストラクターでオブジェクトを構築するクエリを使用することは、悪い習慣である可能性があると以前に言われました。
- それが悪い習慣だとしたら、なぜそれが悪い習慣なのですか?
- 代替手段は何ですか?