我想構建一個自定義的ActiveRecord類,並試圖返回一個對象的MySQL結果。該對象將是模型。 下面是我在做什麼:PHP - mysql_fetch_object類名不工作
while($object = mysql_fetch_object($result, $this->_model)) {
foreach($object as $key => $val) {
if($this->is_serialized($val)) $object->$key = unserialize($val);
}
$return_value[] = $object;
}
如果我做的結果的print_r(),我得到一個空類(沒有變量被設置或任何東西)。 這裏是我的模型:
class User extends ActiveRecord {
public $_hasOne = "Profile";
public $_required = array('full_name', 'user_name', 'password', 'country');
public $_unique = array('full_name', 'user_name');
}
我想不出什麼我做錯了!
編輯:修復它到底。在我的Activerecord類的開始我有這樣的:
$fields = $this->query("SHOW COLUMNS FROM " . $this->_table);
while($field = mysql_fetch_assoc($fields)) {
$this->_columns[] = $field['Field'];
$this->$field['Field'] = null;
}
這是設置所有值爲NULL! 一個愚蠢的錯誤。它現在:
$fields = $this->query("SHOW COLUMNS FROM " . $this->_table);
while($field = mysql_fetch_assoc($fields)) {
$this->_columns[] = $field['Field'];
if(!isset($this->$field['Field'])) $this->$field['Field'] = null;
}
它實際上是否返回某些內容?嘗試'var_dump(mysql_fetch_assoc);'。 – HyderA