解码php编码的json无法正常工作

时间:2015-11-13 15:59:58

标签: php json decode

这是我的data.php

$global = $pdo->query("SELECT name, age");
$global = $global->fetchAll(PDO::FETCH_ASSOC);
$arr = array('data'=>$global);    
echo json_encode($arr, JSON_PRETTY_PRINT);

这是我的index.php

<html>
    <?php
        $json_url = "data.php";
        $json = utf8_encode(file_get_contents($json_url));
        $data = json_decode($json, false);
        echo "<pre>";
        print_r($data);
        echo "</pre>";
    ?>
</html>

我得到空白数据。我做错了什么?

2 个答案:

答案 0 :(得分:0)

首先确保file_get_contents实际上返回了一些内容。 如果没有,请检查您的日志以查看其实际请求的文件。使用完整路径ex:http://location/path/to/data.php

我遇到了在不设置Content-Type的情况下阅读JSON的问题。 header('Content-Type: application/json')

答案 1 :(得分:0)

试试这个:

$query = "SELECT * FROM table";
$stmt = $pdo->query($query);
$global= $stmt->fetchAll(PDO::FETCH_ASSOC);
$arr = array('data'=>$global);    
echo json_encode($arr);
//echo json_encode($arr, JSON_PRETTY_PRINT);