将一些json字符串的值转换为php中的整数

时间:2016-09-02 08:50:09

标签: php arrays json

我有以下php代码:

$data = array(
'id' => $_POST['id'],
'name' => $_POST['name'],
'country' => $_POST['country'],
'currency' => $_POST['currency'],
'description' => $_POST['description']
);

$data_string = json_encode($data);

示例JSON如下:

{
 "id":"7",
 "name":"Dean",
 "country":"US",
 "currency":"840",
 "description":"Test"      
}

我需要制作" id"字段仅为整数并保持"货币"作为一个字符串,以便JSON成为:

 {
 "id":7,
 "name":"Dean",
 "country":"US",
 "currency":"840",
 "description":"Test"      
}

我尝试使用:

$data_string = json_encode($data, JSON_NUMERIC_CHECK);

但它也变成了#34;货币"到整数。

我有什么方法可以制作" id"一个整数,并将货币作为字符串。

1 个答案:

答案 0 :(得分:6)

使用Type casting之类的

$data = array(
'id' => (int) $_POST['id'],// type cast
'name' => $_POST['name'],
'country' => $_POST['country'],
'currency' => $_POST['currency'],
'description' => $_POST['description']
);

$data_string = json_encode($data);