データベースからデータを取り出し、そのデータに基づいてオブジェクトを作成するクラスを作成しようとしています。CodeIgniter を使用しています。
問題はid
、メソッドに が指定されている__construct
が、データベース テーブルに が含まれていないid
場合、オブジェクトが返されますが、すべてのプロパティが に設定されていることNULL
です。
NULL
これをチェックして、対応する行がない場合にオブジェクトの代わりに返す方法はありますか?
class JS_Model extends CI_Model
{
protected $database_table_name;
protected $database_keys;
...
public function __construct($id = NULL){
if($id){
$this->getFromDatabase($id);
}
}
...
function getFromDatabase($id){
foreach($this->database_keys as $key){
$this->db->select($key);
}
$this->db->from($this->database_table_name);
$this->db->where('id', $id);
$this->db->limit(1);
$q = $this->db->get();
if ($q->num_rows() > 0){
foreach($q->result() as $property){
foreach($property as $key => $value){
$this->$key = $value;
}
}
} else {
// NEED TO SET THE OBJECT TO NULL FOR THIS CASE
}
}
...
}
どんな助けでも大歓迎です。