可能已经被问过,但我似乎无法找到我正在寻找的答案。
如何检查变量是否在数组中?
到目前为止,这是我的代码 - 理想情况下,当产品ID也存在于lastUpdatedProduct数组以及productOptions数组中时,我不想回应一些东西。
<?php if ($this->productOptions) { ?>
<?php foreach ($this->productOptions as $options) {
$array = $this->lastUpdatedProduct;
echo '<strong>' . $options['ProductID'] . '</strong>';
if(in_array($options['CentreID'], $array)) {
echo 'it exists';
}
}
}?>
继承我的阵列:
array
0 =>
array
'pid' => string '391' (length=3)
1 =>
array
'pid' => string '467' (length=3)
2 =>
array
'pid' => string '474' (length=3)
3 =>
array
'pid' => string '2985' (length=4)
4 =>
array
'pid' => string '2985' (length=4)
5 =>
array
'pid' => string '424' (length=3)
答案 0 :(得分:1)
理想情况下,当产品ID在数组
中时,我不想回应一些东西
if(is_array($options['ProductID'])) { }
理想情况下,当产品ID也存在于lastUpdatedProduct数组以及productOptions数组中时,我不想回应一些东西。
if(is_array($this->productOptions)) {
foreach($array as $pid) {
if(in_array($pid, $options['ProductID'])) {
//echo
}
}
}
答案 1 :(得分:1)
问题是$array
是一个包含数组的数组,并且您正试图在其中一个内部数组中找到某些内容。试试这个:
foreach ($array as $entry) {
if (is_array($entry) && in_array($options['CentreID'], $entry))
echo 'it exists';
}