首页 > 解决方案 > 如何使用 PHP json_encode 与字符串而不是整数的引号?

问题描述

我使用 PHP cURL 向 TaxJar API 提交一些数据。我使用 PHP cURL 提交数据。使用当前设置,如下所示,我的整数作为字符串提交,需要保持为整数。

$fields = array(
    "from_country"=>urlencode($from_country),
    "from_zip"=>urlencode($from_zip),
    "from_state"=>urlencode($from_state),
    "from_city"=>urlencode($from_city),
    "from_street"=>urlencode($from_street),
    "to_country"=>urlencode($to_country),
    "to_zip"=>urlencode($to_zip),
    "to_state"=>urlencode($to_state),
    "to_city"=>urlencode($to_city),
    "to_street"=>urlencode($to_street),
    "amount"=>10.00,
    "shipping"=>1.25
);
$ch = curl_init($url);
$payload = json_encode(array($fields));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Authorization: Bearer xxx',
    'Content-Type: application/json'
));
curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
echo $output;

所以无论我做什么,它都提交为“shipping”:“1.25”,这是一个字符串,需要是一个整数并提交为“shipping”:1.25

我怎样才能只为整数实现这一点?对投票结束这个的人感到抱歉 - 只是想弄清楚一些事情。

标签: phpcurl

解决方案


推荐阅读