2013-10-23 334 views
0

我提取JSON值值,但总是收到一个空的结果,当我回显值获取从JSON字符串

$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]'; 

$obj2 = json_decode($json, true); 

$displayName = $obj2->Surname; 

echo"$displayName"; 
+1

那是什么'$ xmlresponse'? –

+1

$ xmlresponse应该是$ json吗?美元价值从何而来? – Jompper

+0

这需要进行基本的调试。当你做一个'print_r($ obj2);'时,你会得到什么? –

回答

0

试试这个:

<?php 
$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]'; 
$obj2 = json_decode($json, true); 
$displayName = $obj2[0][0]['Surname']; 
echo "$displayName"; 
?> 
1

你必须在其他一个一个对象在这个JSON字符串

$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]'; 

$obj2 = json_decode($json); 

print_r($obj2); 
0

这应该是这样的:

$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]'; 

$obj2 = json_decode($json, true); 

$displayName = $obj2->Surname; 

echo"$displayName"; 

你混淆/弥补变量名...

0

有你所提供的代码的几个问题。 首先,您的json文本存储在$json中,但您尝试解码$xmlresponse。我想这只是一个复制/粘贴错误,但。 其次,尽管您明确强制json_decode将对象解码为关联数组,但您仍尝试使用对象语法访问姓氏。第三,json提供了一个数组中的一个对象的数组。您忽略响应的嵌套结构。

试试这个:

$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]'; 
$response = json_decode($json); 
$displayName = $response[0][0]->Surname; 

echo $displayName;