我试图确定数组中的某个变量是否存在,以及它是否为“真”状态,以及它是否为“假”状态。问题是,我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