如果foreach循环中的语句不能正常工作

时间:2011-11-08 18:37:07

标签: php loops foreach

我有一个foreach循环,其中包含if语句,因此如果$value等于'Messages',它应该将变量num1增加1,但if语句似乎没有正常工作。任何帮助将不胜感激。

编辑:如果我删除if语句而只回显$value,它将回显数组中每个部分的值。

代码:

 <?php
     $num1 = 0;
     foreach($inventory['Category'] as $key => $value) {
         if ($value == 'Messages') {  
             $num1++;  
         }
     }
 ?>

2 个答案:

答案 0 :(得分:2)

$num1未增加的唯一原因可能是因为$value不是“消息”。尝试回显$value变量&amp;见。

答案 1 :(得分:0)

您确定不想这样做:

<?php
 $num1 = 0;
 foreach($inventory as $key => $value) {
         if ($value == 'Messages') {  $num1++;  }
 }
 ?>

如果您的数组有一个名为$inventory['Messages']的密钥,则可以找到它。您的原始样本会查找$inventory['Category']['Messages']