//如下面的例子
$a = 5.00;
$b = floatval($a);
$c = (float)$a;
var_dump($b);
echo '</br>';
var_dump($c);
打印出来的结果是:
float(5)
float(5)
//例子二:
$a = 5;
$b = floatval($a);
$c = (float)$a;
var_dump($b);
echo '</br>';
var_dump($c);
打印的结果是:
float(5)
float(5)
至于原因,目前还没有整明白,猜测是PHP自身做的处理,结果就没有 点零零(.00)了。但是现在就让你,把int 5转换成float类型,怎么办呢....我使用的方法是通过json_encode来实现的。
$a = 5;
$jsonData = [
'money'=>floatval($a),
'how_money'=>(float)$a,
];
$jsonData = json_encode($jsonData,JSON_PRESERVE_ZERO_FRACTION);
var_dump($jsonData);
打印结果是:"{"money":5.0,"how_money":5.0}"
下面简单介绍一下JSON的格式类型有哪些。
数据交换格式方式
- 基本类型
- 数组类型
- 对象嵌套
案例实操
基本类型
{“键” : 值, “键” : “值”,…},以大括号开始,键的名称加上冒号,然后跟上对应的的值,若有其他键值对则以逗号进行分割。
{
"name": "张三",
"age": 18,
"sex": true
}
数组类型
[{“键” : 值, “键” : “值”},{“键” : 值, “键” : “值”},…],以中括号开始,其间的数据通过逗号进行分割。
[
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
对象嵌套
由上面两种类型,因为值的不固定性,可以演变出各种各样的嵌套类型。
{
"name": "teacher",
"computer": {
"CPU":"intel7,
"disk": "512G"
},
"students": [
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
}
1. JSON数值({
"key": value
}) {
"key": 520,
"key1": 1314
}
2. JSON字符串({
"key": "value"
}) {
"key": "我爱你",
"key1": "一生一世"
}
3. JSON数组({
"key": [value]
}) {
"key": [520, 1314],
"key1": [520, 3344]
}
4. JSON对象({
"key": {
value
}
}) {
"key": {
"520": "我爱你"
},
"key1": {
"1314": "一生一世"
}
}
5. JSON对象数组({
"key": [{
"key1": "value1"
}, {
"key2": "value2"
}]
}) {
"我": [{
"key": "我爱你"
}, {
"key1": "一生一世"
}]
}
6. JSON数组对象({
"key": {
"key1": [value1, value2]
}
}) {
"我": {
[520, 1314],
["我爱你", "一生一世"]
}
}