我有一個數組$ ziparray,我試圖在MySQL查詢中使用,以檢查名爲'zip'的數據庫列。下面的代碼似乎是合乎邏輯的我,但我得到了一個錯誤:MySQL中的數組Where where條款
Catchable fatal error: Object of class stdClass could not be converted to string in...
$ziparrayimplode = implode(",", $ziparray);
$listinghistoryquery = "SELECT * FROM listings WHERE zip IN ($ziparrayimplode) ORDER BY list_ts DESC";
$listinghistory = mysql_query($listinghistoryquery) or die('SQL Error :: '.mysql_error());
我絕對肯定的$ ziparray是一個數組。任何人都可以告訴我如何使這個查詢工作?下面是用於創建數組的代碼..
$countyzipquery = mysql_query("SELECT city_zip FROM dev_cities WHERE city_state='$state' AND city_county='$county' AND city_name='$city'");
$ziparray = array();
while (($ziparrayrow = mysql_fetch_object($countyzipquery)) !== FALSE) {
$ziparray[] = $ziparrayrow;
下面是後續代碼var_dump($ ziparray)
array(1) { [0]=> object(stdClass)#3 (1) { ["city_zip"]=> string(5) "63028" } }
看起來你的$ ziparray是一個標準的對象,而不是一個數組。你能拋出你用來生成它的代碼嗎? (如果需要匿名) –
'$ ziparray'可能是一個數組,但它似乎至少包含一個'stdClass'對象,它無法轉換爲'implode'操作本身的字符串。請在你的問題中包含'var_dump($ ziparray)'的輸出。 – lanzz
那麼你去,你正在將對象('mysql_fetch_object')提取到'$ ziparray'中,然後你試圖連接這些對象。 – lanzz