① php如何输出中文json格式字符串
php如何输出中文json格式字符串
如何对json格式的字符串进行转换,php提供了两个函数:
json_encode 对变量进行 JSON 编码
json_decode 对 JSON 格式的字符串进行编码
下面看个实例:
$arr = ['a', 'b', 'c'];echo json_encode($arr);
输出为:
["a","b","c"]
但是,当我们在数组中放入中文的时候,就会出现问题:
$arr = [ '世界', '你好',
];echo json_encode($arr);
输出的结果为:
["\u4e16\u754c","\u4f60\u597d"]
这个结果显然不是我们想要的,但是为什么出现这个呢?
因为当我们的值中包含中文时,php对他进行json编码时底层会对中文进行unicode编码,导致结果不可读,那该怎么解决呢?
方法一
可以利用 urlencode 和 urldecode 方法绕过这个转码为 unicode 的过程,先将中文字段进行urlencode,然后json_encode,最后再用urldecode处理结果,便可以正常显示中文。具体代码如下:
$arr = [ '世界', '你好',
];echo urldecode(json_encode(array_map('urlencode', $arr)));
输出结果为:
["世界","你好"]
方法二
自PHP5.4版本,官方就已经给Json新增了一个选项: JSON_UNESCAPED_UNICODE。加上这个选项后,就不会自动把中文编码了。具体代码如下:
$arr = [ '世界', '你好',
];echo json_encode($arr, JSON_UNESCAPED_UNICODE);
["世界","你好"]
看吧,这才是我们想要的结果 :)
② php读取json并输出
$json = json_decode($file_contents);
//print_r($json);
$status = $json->data->status;
echo "status=".$title."<br>";
$boy=$json->data;
//print_r($boy);
$message = '';
foreach($json->data->boy as $v){
$message .= $v->data.' '.$v->type."\r\n";
}
echo "message".$message."<br>";
③ php+mysql数据库取数据转成json格式
PHP取Mysql数据并转换为json格式,这很简单
过程分为取数据-保存为数组-json格式输出三步
取数据分为连接与查询(条件等),参考下面文章
保存为数组也容易,array_push就行
json格式的输换最为便捷,只需echo json_encode($myArr);
输出的就是你要的json格式,就像你图中的那样
参考文章:http://snowcoal.com/article/568.html
④ json.php里得到返回数据怎么输出到html里
用json_decode()将json字符串转化成php数组,然后直接循环数组取出值即可。
<?php
$content= file_get_contents('获取json字符串的url');
$content = json_decode($content);//将json字符串转化成php数组
foreach ($content as $key ) {//循环数组
echo '<li>' . $key['city'] . '</li>';
echo '<li>' . $key['city_en'] . '</li>';
echo '<li>' . $key['date_y'] . '</li>';
echo '<li>' . $key['week'] . '</li>';
}
⑤ php,我想把数据库内容做成json格式,数据有换行符,去掉换行符输出后检测还是会换行。
1:PHP中可以用PHP_EOL来替代,以提高代码的可移植性
因为换行在不同系统会有不同的表现形式
在unix系列用 \n
在windows系列用 \r\n
在mac用 \r
2:例如
$content=str_replace(PHP_EOL,"",$content);
⑥ 如何在PHP中返回Json数据
不对。
返回json用的json_encode()方法没错,但是需要在头部声明格式。
php返回需要用json_encode()方法来将需要转换的字符串转换成json编码格式(注意:仅仅更换文件内容,而返回的文件依然为文本格式且编码为gtk)
所以,这里需要在php头部声明
header('Content-Type:text/json;charset=utf-8');
JSON(JavaScriptObject Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
json通常被作为配置文件,常见还有.ini
⑦ php 将json格式数据转换成数组的方法
如下所示:
//json格式数据
$data
=
'[{
"F_MoleId":
"1",
"F_ParentId":
"0",
"F_EnCode":
"SysManage",}]';
//转换成数组
$arr
=
json_decode($data,true);
//输出
var_mp($arr);
以上这篇php
将json格式数据转换成数组的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:PHP使用JSON和将json还原成数组在PHP语言中使用JSON和将json还原成数组的方法PHP实现数组转JSon和JSon转数组的方法示例php
json转换成数组形式代码分享php数组转成json格式的方法
⑧ php怎么输出json数组
对于特定的不能使用json_decode的json的话,建议直接输出
比如:
<?php
echo'{';
//假设你的数据是从数据库中读取
$query=mysql_query(查询语句);
while($row=mysql_fetch_array($query)){
echo$row['字段'];//在这里构造出json显示的数据
}
echo'}';
?>
希望可以帮到你
⑨ 如何将JSON字符串格式化输出
一般在项目中,我们可能会经常需要对返回结果进行格式化处理,比如先把返回结果对象转换为JSON格式的字符串,然后再将其输出。这个JSON格式化处理的过程,我们在前端或者后端都可以实现。
在JavaScript中,我们如果需要将js对象转换为json字符串,可以通过 JSON.stringify() 来实现。
相反,如果需要将json字符串转换为js对象,可以通过 JSON.parse() 来实现。
在Python3中,我们如果需要将Python对象转换为json字符串,可以通过 json.mps() 来实现。
相反,如果需要将json字符串转换为Python对象,可以通过 json.loads() 来实现。
⑩ 用php如何将数据(文本和图片)转换成json格式
json和php数组 格式的互相转换,参考如下:
$php_json = json_encode($json_arr); //把php数组格式转换成 json 格式的数据
echo $php_json;
$php_json = json_decode($php_json); //再把json格式的数据转换成php数组
print_r($php_json);
json数组
$json = '[{"id":"22","name":"33","descn":"44"}]'; //json格式的数组转换成 php的数组
$arr = (Array)json_decode($json);
echo $arr[0]->id; //用对象的方式访问。