2011-11-18 106 views
-1

OK出于某种原因,当我的print_r的json我得到以下清理JSON数据

[{"value":{"givenName":"stream","middleName":null,"familyName":"101","prefix":null,"suffix":null,"givenNameSound":null,"familyNameSound":null}}] 
然而

值应该=电子邮件地址,然后将其拥有的其他领域给定名称等

我想要做的只是打印出有价值的字段在ie [email protected]

我该如何用PHP来做到这一点。

如何我目前做

$contacts = $queryResponse->query->results->contact; 
      //print_r($contacts); 
      foreach($contacts as $contact) { 
      $contact = json_encode($contact); 
      $contact = json_decode($contact); 
      if($contact->fields->value != NULL) 
      { 
      print "[".json_encode($contact->fields)."]"; 
      //print_r($contact->fields->value); 
      } 
+0

什么是编码,然后立即解码'$ contact'? – thetaiko

+0

另外,你的问题真的不清楚。 – thetaiko

+0

我认为他模仿了一个输入 – ncank

回答

0

使用json_last_error()找出来。 (升级到PHP 5.3进行测试。)

每当您在编码的JSON字符串中收到NULL值时,输入字符集都不是有效的UTF-8。这是json_encode手册页中列出的要求之一。