0

这是我目前所拥有的:

<?php
    $string = file_get_contents("http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=##################################&steamids=76561198040884950");
    $json=json_decode($string);
?>

<script type="text/javascript">
        alert("<?php echo $json; ?>");
</script>

在这个阶段我要做的就是接收 JSON 信息。我对 jQuery 和 PHP 很陌生,所以不确定我哪里出错了。

4

5 回答 5

1

看看这个http://api.jquery.com/jQuery.parseJSON/,像这样

var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );
于 2012-11-12T05:49:33.690 回答
1

通过使用json_decode,您将 JSON 从字符串(可以普遍理解和解析)转换为 PHP 对象或数组,这不会以您希望的方式打印出来。您应该避免转换它,只需执行以下操作:

<?php
    $string = file_get_contents("http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=...&steamids=76561198040884950");
?>

<script type="text/javascript">
        var json = <?php echo $string; ?>;
        // do things with the JSON; parse it into an object, etc
</script>
于 2012-11-12T05:50:44.157 回答
1

通过 PHP使用json_decode时,您的输出将以数组的形式返回;

从外部文件返回 json 信息到 jquery 脚本时,您必须确保使用正确的语法。法典

于 2012-11-12T05:52:59.890 回答
1

其次我不确定你是否知道,但是在使用 file_get_contents 时,你需要你的 php.ini 文件具有以下标志:

allow_url_fopen = 1

如果您不想这样做,还有其他选择: 检查一下

于 2012-11-12T05:56:06.953 回答
1

尝试使用<?php print_r($json); ?>而不是echo. 它正在做你想做的事。 echo只是不擅长处理数组。

于 2012-11-12T06:05:41.930 回答