我試圖確定數組中的某個變量是否存在,以及它是否爲「真」狀態,以及它是否爲「假」狀態。問題是,我receiveing所有數組變量的響應,當時我只是想知道,如果頁面變量存在與鏈接的陣列狀http://example.com/product.php?image_id=50數組中的變量:對或錯
<?php
$page = $_GET['image_id'];
if (!empty($_SESSION)){
foreach($_SESSION as $name => $value2) {
if (substr($name, 0, 7)=='images_') {
$id = substr($name, 7, (strlen($name)-7));
$get = mysql_query('SELECT * FROM images WHERE image_id='.mysql_real_escape_string((int)$id));
while ($cart_info_row = mysql_fetch_assoc($get)) {
$cart = array('image_id' => $cart_info_row['image_id'],);
if (in_array($page, $cart)){echo 'true';} else {echo 'false';}
}
}
}
}
}
?>
假設下面的數字是在SESSION的print_r(以$車):
Array ([image_id] => 42) false
Array ([image_id] => 45) false
Array ([image_id] => 50) true
Array ([image_id] => 49) false
現在,我怎麼能只識別如果變量50 ($page = $_GET['image_id'];)
存在與出其他三個?
難道你不能只是'$ cart_info_row ['image_id'] == $ page'? –
不是'$ cart_info_row ['image_id']'與'$ id'相同嗎?爲什麼您需要執行查詢,除了確認是否有包含該圖像ID的行?爲什麼當數組只有一個元素時使用'in_array()'? – Barmar