2015-01-09 48 views
1

我試圖在php中使用search_array函數來查找和取消設置數組內的空元素。警告:array_search()期望參數2是數組,空給定

這是我的代碼:

$res = $friendres->fetch_array(MYSQLI_ASSOC); 
$emptysearch = array_search('',$res); 
unset ($res['emptysearch']); 

當運行該代碼段,PHP的結果這樣的錯誤: 警告:array_search()預計參數2爲陣列,空給出

雖然即時通訊思想$ res是一個數組,我該如何解決這個問題?

+0

['mysqli_result :: fetch_array'(http://php.net/manual/en/mysqli-result.fetch-array.php): *「**返回**對應於獲取行的字符串數組或**如果結果集**中沒有更多行,則返回NULL。」*如何解決這個問題?如果結果集耗盡,請不要調用'fetch_array'。 –

+0

var_dump($ res)並檢查它的數組是否可能? – Neat

+2

你沒有理由認爲PHP是錯誤的:如果它說'$ res'是'null'那麼它是'null'。 –

回答

0

您的SQL最有可能是錯誤的。您可以驗證你的結果是有效的下列要求:

$res = $friendres->fetch_array(MYSQLI_ASSOC); 

if(null !== $res && is_array($res)) { 
    $emptysearch = array_search('', $res); 
} else { 
    // Likely an error occurred somewhere in your query 
} 
相關問題