我通常寫oop代碼,這很可能是爲什麼我從來沒有見過這種編碼方式。我不明白下期多維數組中的語法,爲什麼[$obj->id]['label']
不只是$obj['id']['label']]
我正在做一個嘖嘖,但我不明白這個語法
$sql = "SELECT id, label, link_url, parent_id FROM dyn_menu ORDER BY parent_id, id ASC";
$items = mysql_query($sql);
while ($obj = mysql_fetch_object($items)) {
if ($obj->parent_id == 0) {
$parent_menu[$obj->id]['label'] = $obj->label;
$parent_menu[$obj->id]['link'] = $obj->link_url;
} else {
$sub_menu[$obj->id]['parent'] = $obj->parent_id;
$sub_menu[$obj->id]['label'] = $obj->label;
$sub_menu[$obj->id]['link'] = $obj->link_url;
if (!isset($parent_menu[$obj->parent_id]['count'])) {
$parent_menu[$obj->parent_id]['count'] = 0;
}
$parent_menu[$obj->parent_id]['count']++;
}
}
mysql_free_result($items);
它是一種動態訪問任何數組密鑰的方式。 '$ obj-> id'的值用於訪問數組鍵。 – datasage
我以爲你瞭解面向對象? $ obj是一個對象。 – crush
(關於mysql_ *的強制性註釋) - [**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再維護和[已正式棄用](http://j.mp/XqV7Lp)。看到紅色框?請參閱[準備的語句](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli) - [這篇文章](http://j.mp/QEx8IB) – Amelia