麻烦地解决从PHP

时间:2016-11-26 00:41:41

标签: php associative-array

我想使用一个从api调用返回的关联数组元素来比较像这样的字符串值:

<!-- Check If there are any todo items. If not skip Todo list markup. =====-->
            <?php 
            if ($todo_items['todo_id'] == '1234567')  {
                //This value indicates no todo items for person
            }
            else  {
              //markup to render todo item list
            ?>

这会导致&#34;注意:未定义的索引:第80行的/var/www/todo_client/todo.php中的todo_id。 我输入了一个var_dump($ todo_items),结果是:

array (size=1)
  0 => 
    object(stdClass)[3]
      public 'todo_id' => string '1234567' (length=7)

有谁知道为什么我无法访问$ todo_items [&#39; todo_id&#39;]?

1 个答案:

答案 0 :(得分:1)

从API中你会收到一个stdClasses数组,所以如果你只返回一个项目,你可以这样做来测试这个值:

$result = $todo_items[0];
if ($result->todo_id == '1234567')  {/*...*/}

当有(或可能)多个项目被返回时,您可以遍历数组($todo_items)并为每个项目执行此测试:

foreach($todo_items as $item) {
   if ($result->todo_id == '1234567') {/*...*/}
}