我有一个如下数组:
$number = array(1,2,3,4,5);
我的价值如下:
$my_num = 2;
我想在每个$ number数组中比较$ my_num变量。
我的预期输出如下:不,是,否,否,否。
我试过这样:
<?php
if(in_array($my_num, $number))
{
echo 'Yes';
}
else
{
echo 'No';
}
但我只能得到&#39;是&#39;从上面的输出。
我应该如何修改它以获得预期的输出?
答案 0 :(得分:3)
正如我在上面的评论中所说的,您只需要foreach
来遍历您的数组并比较您的数据。
foreach($numbers as $num){
echo ($num == $my_num) ? 'Yes' : 'No';
}
答案 1 :(得分:3)
这是一个option,主要是将$my_num
与每个数组值进行比较并将其映射为是或否。逗号仅用于您的预期结果。
$english = array_map(function($val) use ($my_num) {
return ($val == $my_num) ? 'Yes' : 'No';
}, $number);
echo implode(', ', $english); // No, Yes, No, No, No
答案 2 :(得分:2)
您可以使用foreach循环。它遍历数组,将当前数组成员的值赋给变量$ num。
foreach ($number as $num) {
if ($num == $my_num) {
echo 'Yes';
} else {
echo 'No';
}
}