特定のプロパティを持つクラスがあり、それらのプロパティがデータベースの列名と一致するように最善を尽くしたとしましょう。これにより、データベースの各行をクラスオブジェクトに収めることができます。
私が通常これを行う方法は$class->get_all()
、特定のクエリに一致するすべての行についてデータベースにクエリを実行するメソッドを作成することです。次に、リソースセットから、mysql_fetch_object($ resource)を使用していくつかのSQLオブジェクトを作成し、それらを1つの配列に格納して返します。基本的に、このようなことが通常発生します。
<?php
while($row = mysql_fetch_object($result_set)){
$class->id = $row->id;
$class->name = $row->name;
$class->birthdate = $row->birthdate;
$output[] = $class;
}
return $output;
?>
...これは、同じプロパティを持つ2つのオブジェクト($rowと$class)があり、そのうちの1つをもう1つにコピーしていることを意味します。
これを最適化する方法はありますか?同様に、値を一方から他方にコピーする代わりに、同じsqlオブジェクトプロパティへのポインタとして設定しますか?