您的位置:

解决php的json(PHP )

解决php的json(PHP )

更新:

本文目录一览:

如何解决php中json

json_decode()

json_decode

(PHP 5 = 5.2.0, PECL json = 1.2.0)

json_decode — 对 JSON 格式的字符串进行编码

说明

mixed json_decode ( string $json [, bool $assoc ] )

接受一个 JSON 格式的字符串并且把它转换为 PHP 变量

参数

json

待解码的 json string 格式的字符串。

assoc

当该参数为 TRUE 时,将返回 array 而非 object 。

返回值

Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned.

2.json_encode()

json_encode

(PHP 5 = 5.2.0, PECL json = 1.2.0)

json_encode — 对变量进行 JSON 编码

Report a bug 说明

string json_encode ( mixed $value [, int $options = 0 ] )

返回 value 值的 JSON 形式

Report a bug 参数

value

待编码的 value ,除了resource 类型之外,可以为任何数据类型

该函数只能接受 UTF-8 编码的数据

options

由以下常量组成的二进制掩码: JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT, JSON_UNESCAPED_UNICODE.

Report a bug 返回值

编码成功则返回一个以 JSON 形式表示的 string 或者在失败时返回 FALSE 。

Report a bug 更新日志

版本 说明

5.4.0 options 参数增加常量: JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, 和 JSON_UNESCAPED_UNICODE。

5.3.3 options 参数增加常量:JSON_NUMERIC_CHECK。

5.3.0 增加 options 参数.

PHP JSON格式的中文显示问题解决方法

返回json数据中文显示的问题

上一篇文章中,返回json格式的中文显示成\u5723\u8bde\u8282\u5343\u4e07\u597d\u793c\u5927\u5949\u9001

解决方法一:

复制代码

代码如下:

?php

function

Notice(){

include

'./include/conn.php';

//数据库链接文件

$sql_notice

=

mysql_query('SELECT

*

FROM

gg_notice

where

enable

=

"1"

limit

0,10');

$notice

=

mysql_fetch_array($sql_notice,

MYSQL_ASSOC);

$str

=

json_encode($notice);

//linux

return

preg_replace("#\\\u([0-9a-f]{4})#ie",

"iconv('UCS-2BE',

'UTF-8',

pack('H4',

'\\1'))",

$str);

//windows

//return

preg_replace("#\\\u([0-9a-f]{4})#ie",

"iconv('UCS-2LE',

'UTF-8',

pack('H4',

'\\1'))",

$str);

}

?

另外从网上搜索到的其他方法

复制代码

代码如下:

?php

/**

*

json

生成,分析

支持中文

*/

class

Json_Helper

{

/**

*

生成json

*/

public

static

function

encode($str){

$json

=

json_encode($str);

//linux

return

preg_replace("#\\\u([0-9a-f]{4})#ie",

"iconv('UCS-2BE',

'UTF-8',

pack('H4',

'\\1'))",

$json);

//windows

//return

preg_replace("#\\\u([0-9a-f]{4})#ie",

"iconv('UCS-2LE',

'UTF-8',

pack('H4',

'\\1'))",

$json);

}

/**

*

分析json

*/

public

static

function

decode($str)

{

return

json_decode($str);

}

}

?

PHP中json_encode中文乱码问题

php 中使用 json_encode() 内置函数(php 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它。这个函数的功能是将数值转换成json数据存储格式

$arr = array ('a'=1,'b'=2,'c'=3,'d'=4,'e'=5);

echo json_encode($arr);

//结果

//{"a":1,"b":2,"c":3,"d":4,"e":5}

/*

下面看一款json_encode中文乱码问题

解决方法是用urlencode()函数处理以下,在json_encode之前,把所有数组内所有内容都用urlencode()处理一下,然用json_encode()转换成json字符串,最后再用urldecode()将编码过的中文转回来

*/

function arrayrecursive($array, $function, $apply_to_keys_also = false)

{

static $recursive_counter = 0;

if (++$recursive_counter 1000) {

die('possible deep recursion attack');

}

foreach ($array as $key = $value) {

if (is_array($value)) {

arrayrecursive($array[$key], $function, $apply_to_keys_also);

} else {

$array[$key] = $function($value);

}

if ($apply_to_keys_also is_string($key)) {

$new_key = $function($key);

if ($new_key != $key) {

$array[$new_key] = $array[$key];

unset($array[$key]);

}

}

}

$recursive_counter--;

}

/**************************************************************

*

* 将数组转换为json字符串(兼容中文)

* @param array $array 要转换的数组

* @return string 转换得到的json字符串

* @access public

*

*************************************************************/

function json($array) {

arrayrecursive($array, 'urlencode', true);

$json = json_encode($array);

return urldecode($json);

}

$array = array

(

'name'='希亚',

'age'=20

);

echo json($array);

//应用实例

$servname="localhost";

$sqlservname="root";

$sqlservpws="123456";

$sqlname="lock1";

$db=mysql教程_connect($servname,$sqlservname,$sqlservpws) or die("数据库教程连接失败");

mysql_select_db($sqlname,$db);

$sql = "select * from t_operater";

$result =mysql_query($sql);

$rows = mysql_num_rows($result);

while($obj = mysql_fetch_object($result))

{

$arr[] = $obj;

}

echo '({"total":"'.$rows.'","results":'.json_encode($arr).'})';

php第三节笔记,php读书笔记

2022-12-02
php教程笔记复习1(细说php读书笔记)

2022-11-10
php新手笔记,php初学者

2022-11-19
php基础学习笔记下,细说php读书笔记

2022-11-18
php语言学习笔记,Php语法

2022-11-18
core解析json的笔记(c json解析)

本文目录一览: 1、如何解析json中map数据 2、fasterxml.jackson.core.jsonparser.feature是哪个jar包的 3、spring mvc 怎么获取json 4

2023-12-08
解决php的json(PHP )

本文目录一览: 1、如何解决php中json 2、PHP JSON格式的中文显示问题解决方法 3、PHP中json_encode中文乱码问题 如何解决php中json json_decode() js

2023-12-08
学习php随笔,PHP笔记

2022-11-25
php折腾记(php笔记)

2022-11-15
script异步php,javascript异步编程

2023-01-06
信息记录的php代码如何编写,php笔记源码

2022-11-30
php中script有什么作用(php中script标签)

2022-11-15
php编程笔记的个人空间(php鸟哥博客)

2022-11-10
php学习入门笔记,php 入门

2023-01-07
ajaxphp解析json,php中ajax

2022-11-29
php解析json数据的源代码(php生成json数据)

2022-11-16
php点点滴滴,PHP笔记

2022-11-20
phphtml标记,php的标记

2023-01-06
在php中处理json请求(php 接收json)

2022-11-13
php构建json数据,php获取json中的内容

本文目录一览: 1、PHP如何把数据写入JSON文件并在另一PHP文件读取JSON数据? 2、PHP怎么生成JSON列表啊? 3、php 怎么向json 中添加json数据 4、如何构造如下json的

2023-12-08