0

我有以下 php:

$getlists = new CS_REST_Campaigns($_POST['campaign_id'], $auth);
$getlistsresult = $wrap->get_lists_and_segments();

if($getlistsresult->was_successful()) {

   echo '<pre>';
    var_dump($getlistsresult->response);
    echo '</pre>';
}

上述输出:

 object(stdClass)#310 (2) {
  ["Lists"]=>
  array(1) {
    [0]=>
    object(stdClass)#309 (2) {
      ["ListID"]=>
      string(32) "xxxxxxxxxxxxxxxxxxxxxx"
      ["Name"]=>
      string(6) "List 1"
    }
  }
  ["Segments"]=>
  array(0) {
  }
}

我将如何定位/提取 ListID?

我尝试了以下不返回任何内容的方法:

foreach($getlistsresult->response->Results as $entry) {
    echo $entry->ListID;
}
4

4 回答 4

3

看起来你的 foreach 有一个错误:

foreach($getlistsresult->response->Lists as $entry) {
    echo $entry->ListID;
}
于 2013-07-16T10:23:06.180 回答
2

Lists写成Results.

foreach($getlistsresult->response->Lists as $entry) {
   echo $entry->ListID;
}
于 2013-07-16T10:22:28.773 回答
1

直接通过:

echo $getlistsresult->response->Lists[0]->ListID

或全部:

foreach($getlistsresult->response->Lists as $entry) {
   echo $entry->ListID;
}
于 2013-07-16T10:24:02.430 回答
0

尝试类型转换

$array   = (array)$getlistsresult->response
$array   = $array["Lists"]

 foreach($array as $value)
 {
    echo $value['ListID']
 }

或使用对象迭代

$list   = $getlistsresult->response->Lists
foreach($list as $key=>$value)
{
    echo $value->ListId
 }
于 2013-07-16T10:24:19.633 回答