首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >stdClass (再次)

stdClass (再次)
EN

Stack Overflow用户
提问于 2011-10-11 12:09:10
回答 1查看 162关注 0票数 0

我想我要疯了,但我想我已经尽了一切可能!

有一个这样的物体;

代码语言:javascript
复制
    object(stdClass)#9 (8) {
  ["Results"]=>
  array(3) {
    [0]=>
    object(stdClass)#10 (5) {
      ["EmailAddress"]=>
      string(22) "38ec95a@emailtests.com"
      ["Name"]=>
      string(13) "Daniel Crabbe"
      ["Date"]=>
      string(19) "2011-07-11 13:00:00"
      ["State"]=>
      string(6) "Active"
      ["CustomFields"]=>
      array(0) {
      }
    }
    [1]=>
    object(stdClass)#11 (5) {
      ["EmailAddress"]=>
      string(12) "dan@jynk.net"
      ["Name"]=>
      string(13) "Daniel Crabbe"
      ["Date"]=>
      string(19) "2011-10-11 12:43:00"
      ["State"]=>
      string(6) "Active"
      ["CustomFields"]=>
      array(0) {
      }
    }
    [2]=>
    object(stdClass)#12 (5) {
      ["EmailAddress"]=>
      string(23) "nikolaprice@hotmail.com"
      ["Name"]=>
      string(12) "Nicola Price"
      ["Date"]=>
      string(19) "2011-08-25 16:24:00"
      ["State"]=>
      string(6) "Active"
      ["CustomFields"]=>
      array(0) {
      }
    }
  }
  ["ResultsOrderedBy"]=>
  string(5) "email"
  ["OrderDirection"]=>
  string(3) "asc"
  ["PageNumber"]=>
  int(1)
  ["PageSize"]=>
  int(150)
  ["RecordsOnThisPage"]=>
  int(3)
  ["TotalNumberOfRecords"]=>
  int(3)
  ["NumberOfPages"]=>
  int(1)
}

并试图循环通过阵列(3),并获得电子邮件地址;

代码语言:javascript
复制
foreach($subscribed_result->results as $sr){
    $res++;
    echo $res.": ".$sr->EmailAddress." ".$sr['EmailAddress']." ";
}

还有几个变体但没有进展。什么是理解?

更新

这样做更好,可以将对象作为数组从$sr获取,但仍然不能获得$sr->emailAddress。

代码语言:javascript
复制
print $subscribed_result->response->Results[0]->EmailAddress; // works?

        foreach($subscribed_result->response->Results as $sr){
            echo $sr->EmailAdress."";   // doesn't work? 
            echo "<pre>";
            print_r($sr);
            echo "</pre>";
        }

吐出来;

代码语言:javascript
复制
stdClass Object
(
    [EmailAddress] => 38ec95a@emailtests.com
    [Name] => Daniel Crabbe
    [Date] => 2011-07-11 13:00:00
    [State] => Active
    [CustomFields] => Array
        (
        )

)
EN

回答 1

Stack Overflow用户

发布于 2011-10-11 12:19:00

改为:

代码语言:javascript
复制
foreach($subscribed_result->Results as $sr){
    $res++;
    echo $res.": ".$sr->EmailAdress;
}

注意Results而不是resultsResults是一个对象,所以$sr['EmailAddress']不能工作。您只能访问这样的数组。$sr->EmailAddress会打印你想要的东西。

为了说明,您将通过以下方式直接访问第一个电子邮件地址:

代码语言:javascript
复制
print $subscribed_result->Results[0]->EmailAddress;
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7725811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档