PHP - Foreach变量仅在读取时有效

时间:2014-01-07 08:59:16

标签: php

我正在尝试阅读每个类别下的帖子,如下所示。有多个类别ID为“4”,“3”,“2”,“1”。仅对于类别“1”,有一个帖子可用。

foreach ($wp_categories as $wp_category) {

  $id = $wp_category->term_taxonomy_id;
  //if($id == "1") {
   $posts = $json_api->introspector->get_posts(array(
                  'cat' => $id
                  ));
  //}
  $result[] = $posts;         
}

return $result;

在上面的代码中,如果我只是取消注释if条件,我将获得结果数组中的帖子。但如果这是评论,我没有得到结果的帖子。

我是PHP的新手,上面的条件没有任何意义。如果有人能够解释为什么if条件使得结果中的帖子可用,那将是非常有帮助的。

转储$ wp_categories

{
  "status": "ok",
  "0": {
    "term_id": "5",
    "name": "Category 5",
    "slug": "category5",
    "term_group": "0",
    "term_order": "1",
    "term_taxonomy_id": "5",
    "taxonomy": "category",
    "description": "",
    "parent": "0",
    "count": "0"
  },
  "1": {
    "term_id": "2",
    "name": "Category 4",
    "slug": "category4",
    "term_group": "0",
    "term_order": "2",
    "term_taxonomy_id": "2",
    "taxonomy": "category",
    "description": "",
    "parent": "0",
    "count": "0"
  },
  "2": {
    "term_id": "3",
    "name": "Category 3",
    "slug": "category3",
    "term_group": "0",
    "term_order": "3",
    "term_taxonomy_id": "3",
    "taxonomy": "category",
    "description": "",
    "parent": "0",
    "count": "0"
  },
  "3": {
    "term_id": "4",
    "name": "abc",
    "slug": "abc",
    "term_group": "0",
    "term_order": "4",
    "term_taxonomy_id": "4",
    "taxonomy": "category",
    "description": "",
    "parent": "0",
    "count": "0"
  },
  "4": {
    "term_id": "1",
    "name": "Others",
    "slug": "others",
    "term_group": "0",
    "term_order": "5",
    "term_taxonomy_id": "1",
    "taxonomy": "category",
    "description": "",
    "parent": "0",
    "count": "1"
  }
}

1 个答案:

答案 0 :(得分:0)

这只是表明只有在id 1:

的情况下才会成立
if($id == "1") {

我认为这应该是:

if(isset($id) && $id != '') {

获取所有帖子。