2012-01-24 56 views
1

我有一個叫做比較的函數叫做鏈接。當我RUNT這個代碼,我不斷收到錯誤消息php usort錯誤消息

foreach($filearray as $k=>$v) 
{ 
$website = new Link($v); 
$links[] = $website; 
} 
usort($links, array("Link","compare")); 

但我得到一個錯誤信息,我無法弄清楚,爲什麼...

「警告:usort()[function.usort] :參數應該是一個數組」

+0

這是一個奇怪的問題。 'var_dump($ links);'實際返回一個數組嗎? – Oldskool

+0

你確定foreach循環是否被實際執行? – Cyclonecode

回答

3

如果$links尚未初始化爲數組中,當$filearray是空的,$links保持null

在循環之前添加$links = array();

0

第二個參數是比較函數必須返回小於,等於或大於零的整數,如果第一個參數被認爲分別小於,等於或大於第二個參數。

檢查下面的文章 http://php.net/manual/en/function.usort.php