×

phpjsonufeff

phpjsonufeff的简单介绍

admin admin 发表于2023-03-28 01:22:08 浏览65 评论0

抢沙发发表评论

本文目录一览:

如何正确运用PHP json_encode函数进行中文转换?

在 php 中使用 json_encode() 内置函数(php 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它。这个函数的功能是将数值转换成json数据存储格式,但是转换后的中文会变成Unicode编码。\x0d\x0a[php] view plaincopyprint?\x0d\x0a

php json_encode使用中文不转码

PHP转JSON,中文会被转码成unicode,使用常量 JSON_UNESCAPED_UNICODE 可以使中文原样输入。

不使用 JSON_UNESCAPED_UNICODE

使用 JSON_UNESCAPED_UNICODE

Json在 5.4 还加入了: JSON_BIGINT_AS_STRING , JSON_PRETTY_PRINT , JSON_UNESCAPED_SLASHES 等选项, 如果有兴趣, 大家可以参看: json_encode-phpjsonufeff

其中有2个比较常用到的参数

JSON_UNESCAPED_UNICODE (中文不转为unicode ,对应的数字 256)

JSON_UNESCAPED_SLASHES (不转义反斜杠,对应的数字 64)

通常json_encode只能传入一个常量,如果同时使用2个常量怎么办?

JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 320

使用方法:json_encode($arr,320);即可完成同时使用2个常量。

PHP5.4才支持 JSON_UNESCAPED_UNICODE 这个参数,此参数是让中文字符在json_encode的时候不用转义,减少数据传输量。

如何在PHP中返回Json数据

概述

不对。

返回json用的json_encode()方法没错,但是需要在头部声明格式。

代码解析

php返回需要用json_encode()方法来将需要转换的字符串转换成json编码格式(注意:仅仅更换文件内容,而返回的文件依然为文本格式且编码为gtk)

所以,这里需要在php头部声明

header('Content-Type:text/json;charset=utf-8');

拓展内容

json

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。-phpjsonufeff

json通常被作为配置文件,常见还有.ini

JSON PHP中,Json字符串反序列化成对象/数组的方法

如下所示:

?php

//php反编码解析json信息

//json_decode(json字符串);

$city

=

array('shandong'='jinan','henan'='zhengzhou','hebei'='shijiazhuang');

$jn_city

=

json_encode($city);

//反编码json

$fan_city

=

json_decode($jn_city,false);//第二个参数false则返回object类型,false可以默认不写

var_dump($fan_city);//object(stdClass)#1

(3)

{

["shandong"]=

string(5)

"jinan"

["henan"]=

string(9)

"zhengzhou"

["hebei"]=

string(12)

"shijiazhuang"

}

echo

"br

/";

$fan_city

=

json_decode($jn_city,true);//第二个参数true则返回array类型

var_dump($fan_city);//array(3)

{

["shandong"]=

string(5)

"jinan"

["henan"]=

string(9)

"zhengzhou"

["hebei"]=

string(12)

"shijiazhuang"

}

手动写的JSON字符串一定要用单引号才能成功反序列化成对象/数组:

?php

//json信息反编码

//不同php版本,对“纯json字符串”解析存在问题

//使用双引号定义的json字符串反编码操作变为null

//$jn

=

"{'name':'tom','age':'20','addr':'beijing'}";

//$fan_jn

=

json_decode($jn,true);

//var_dump($fan_jn);//NULL

//使用单引号定义的json字符串反编码操作会成功

$jn

=

'{"name":"tom","age":"20","addr":"beijing"}';

$fan_jn

=

json_decode($jn,true);

var_dump($fan_jn);

以上这篇JSON

PHP中,Json字符串反序列化成对象/数组的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:C#实现JSON字符串序列化与反序列化的方法jquery序列化form表单使用ajax提交后处理返回的json数据js解析与序列化json数据(二)序列化探讨Json序列化和反序列化方法解析Jquery-phpjsonufeff

组合form元素为json格式,asp.net反序列化jQuery实现form表单元素序列化为json对象的方法浅析JSON序列化与反序列化JS实现json的序列化和反序列化功能示例js解析与序列化json数据(三)json的解析探讨JavaScript实现的反序列化json字符串操作示例-phpjsonufeff

php读取文件时多了个%ufeff,怎样去掉

这是一个文件BOM头,是用来声明UTF-8的,

做法有两种,

1、那个文件在保存的时候选择UTF-8无BOM,或者一些编辑器做去除BOM处理。

2、就是通过PHP,过滤掉BOM。