如何从php中的json中提取数据

时间:2016-02-10 10:44:49

标签: php mysql json

如何从json中提取

{"aaData":[["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:37","5"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:38","6"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:40","9"],["fdsf","fds","654545","2016-02-08 13:52:40","12"],["fsdf","fsdfsdfds","546","2016-02-08 13:53:51","13"],["hjgh","hg","3123123","2016-02-08 14:35:31","14"]]}


foreach($data->aaData as $row) {
echo $row->aaData[1];   
}

它不起作用请帮助我一个人

5 个答案:

答案 0 :(得分:1)

$json = '{"aaData":[["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:37","5"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:38","6"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:40","9"],["fdsf","fds","654545","2016-02-08 13:52:40","12"],["fsdf","fsdfsdfds","546","2016-02-08 13:53:51","13"],["hjgh","hg","3123123","2016-02-08 14:35:31","14"]]}';

$data = json_decode ($json, TRUE);

foreach($data['aaData'] as $row) {
    var_dump ($row);   
}

我会使用json_decodehere documentation)然后设法发布数据。

答案 1 :(得分:1)

JSON不是数组,对象或数据结构。 JSON是一种基于文本的序列化格式 - 所以是一个奇特的字符串,但仍然只是一个字符串。使用json_decode()在PHP中解码它。

$data = json_decode($json);

例如: -

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
var_dump(json_decode($json, true));

将输出

  

object(stdClass)#1(5){       [" a"] => INT(1)       [" b"] => INT(2)       [" c"] => INT(3)       [" d"] => INT(4)       [" e"] => int(5)}

     

array(5){       [" a"] => INT(1)       [" b"] => INT(2)       [" c"] => INT(3)       [" d"] => INT(4)       [" e"] => int(5)}

在你的情况下,更像是

$data='{"aaData":[["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:37","5"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:38","6"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:40","9"],["fdsf","fds","654545","2016-02-08 13:52:40","12"],["fsdf","fsdfsdfds","546","2016-02-08 13:53:51","13"],["hjgh","hg","3123123","2016-02-08 14:35:31","14"]]}';
$yourResult=json_decode($data);
echo "<pre>";
print_r($yourResult);
foreach ($yourResult->aaData as $item) {
//do something with this data
}

希望它有所帮助!

答案 2 :(得分:1)

  

php具有内置函数json_decode(),下面是示例

<?php
$rs=json_decode($jsonvalue);
print_r($rs);
?>

see php official documentation

**你的问题o / p ** enter image description here

这是我更新的代码

$string="";
$data=json_decode('{"aaData":[["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:37","5"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:38","6"],["Hitech Institute","0shoaib0@gmail.com","8149587579","2016-02-04 16:55:40","9"],["fdsf","fds","654545","2016-02-08 13:52:40","12"],["fsdf","fsdfsdfds","546","2016-02-08 13:53:51","13"],["hjgh","hg","3123123","2016-02-08 14:35:31","14"]]}');
$string.="<table border=1>";
foreach ($data->aaData as $key => $value) {
    $string.="<tr>";
    $string.="<td>";
    $string.="<a href=".'yourpath/'.$value[4].">View</a>";
    $string.="<a href=".'yourpath/'.$value[4].">Edit</a>";
    $string.="<a href=".'yourpath/'.$value[4].">Delete</a>";
    $string.="</td>";
    $string.="</tr>";
}
$string.="</table>";
echo $string;

这是你添加引导类和字体图标的o / p your table o/p

答案 3 :(得分:0)

PHP foreach循环不能直接处理json数据。 您需要首先解码数组,如下所示 $data = json_decode($JSON);

检查documentation

答案 4 :(得分:0)

为了获得包含JSON信息的数组,您需要执行此操作:

$output_array=json_decode($json);

之后,您可以通过

了解内部信息
foreach ($output_array->aaData as $item) {
    //....do something
}