php数组,检查是否设置了key的值并相应地更新

时间:2011-03-28 19:20:58

标签: php arrays boolean isset

我初始化一个名为$ present的php数组,如果名称存在,此数组的目的是保持值为1或如果名称不存在则保持为零。我有一个大小为10的名称数组。下面是提到的代码,但它不起作用。

$present = Array();
for($i=0;$i<=10;$i++){
    if(!isset($present[$name[$i]])) {
       $present[$name] = 1;
     }
     else echo $present[$name[$i]];
}

我也试过这个:

$present = Array();
    for($i=0;$i<=10;$i++){
        if(empty($present[$name[$i]])) {
           $present[$name] = 1;
         }
         else echo $present[$name[$i]];
    }

请帮助谢谢!

3 个答案:

答案 0 :(得分:0)

应该是:

$present = Array();
for($i=0;$i<10;$i++){
  if(!isset($present[$name[$i]])) {
       $present[$name[$i]] = 1;
     }
     else echo $present[$name[$i]];
}

答案 1 :(得分:0)

我认为这可能就是你要找的东西。将它设置为1时,你错过了$ i。

$present = array();
for($i=0;$i<=10;$i++){
    if(!isset($present[$name[$i]])) {
       $present[$name[$i]] = 1;
     }
     else echo $present[$name[$i]];
}

答案 2 :(得分:0)

我不确定你要在这里做什么,但如果你只想跟踪一个名字是否存在,你可以让$ present成为一个名字数组,然后使用in_array。

$present = array('John', 'Paul', 'George');

echo in_array('John', $present);          # returns 1
echo in_array('MacArthur', $present);     #returns 0