【发布时间】:2014-10-20 17:08:52
【问题描述】:
我为我的运费报价系统构建了一个 API。我给它提供值,然后我得到报价。它工作正常,但我无法解码 JSON 响应。我得到一个 NULL 响应,但我不确定是怎么回事。根据验证者,JSON 是正确的。
所以我基本上做的是在一侧编码一个 PHP 数组,我想在另一侧使用浏览器和 PHP 解析它。但是,我得到一个 NULL 响应。
这是 JSON。如果您需要更多,请告诉我。
{"carrier":"R&L Carriers","charge":"99.13","service_days":"Wednesday Oct. 22, 2014"}
我只是想解码它以便解析它。如果有其他解析方式请告诉我。
另外,我搜索了 SOF,人们在这里遇到的类似问题对我没有帮助。
这是我用来生成 JSON 的代码。
<?php
//include ('mysql_connect.php');
$result = mysql_query('select * from quote where user_id = "'.$user_id.'" order by netCharge asc limit 1');
if (!$result) {
die('Could not query:' . mysql_error());
}
if (!$result) echo mysql_error();
$api_data = array();
$api_count = '0';
while ($row = mysql_fetch_array($result, MYSQLI_ASSOC)) {
$api_data[carrier] = $row['carrier'];
$api_data[charge] = $row['netCharge'];
$api_data[service_days] = $row['serviceDays'];
$api_count++;
}
$api_data = json_encode($api_data);
print_r($api_data);
?>
这就是我用来获取 JSON 数据的方法:
<?php
$input = file_get_contents('api_request.php?dest_zip=66101&weight=200&class=50<l_shipment=X&Residential_Delivery=X');
echo $input;
$obj = json_decode($input);
var_dump($obj);
?>
【问题讨论】:
-
你将在哪里解码它?在使用javascript的浏览器中?还是在服务器端使用 PHP?需要更多详细信息。
-
我会使用 PHP 来解码。
-
PHP 的
json_decode()不起作用?还是 JSON 没有像您预期的那样从一个地方传递到另一个地方? -
'json_decode()' 不起作用。我真正想做的就是解析这个响应。
-
4 = JSON_ERROR_SYNTAX。行动。请粘贴您的所有代码,以便我们为您提供帮助。