首页vns威尼斯城官网登入 › decode对JSON格式的字符串进行编码而json

decode对JSON格式的字符串进行编码而json

json_decode对JSON格式的字符串举行编码而json_encode对变量举行 JSON
编码,要求的相爱的人能够参照下。

**1.json_decode()

1.json_decode()

**json_decode
(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

json_decode
(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

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

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

说明
mixed json_decode ( string $json [, bool $assoc ] )
选择三个 JSON 格式的字符串而且把它调换为 PHP 变量

说明
mixed json_decode ( string $json [, bool $assoc ] )
选取三个 JSON 格式的字符串何况把它转变为 PHP 变量

参数

参数

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

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

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

assoc
当该参数为 TRUE 时,将再次回到 array 而非 object 。

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

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

范例

范例

Example #1 json_decode() 的例子

Example #1 json_decode() 的例子

代码如下:

<?php 
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; 
var_dump(json_decode($json)); 
var_dump(json_decode($json, true)); 
?>

<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
var_dump(json_decode($json, true));
?>

上例将出口:

上例将出口:

object(stdClass)#1 (5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
} 

array(5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
}

$data='[{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""}]'; 
echo json_decode($data);

代码如下:

结果为:

object(stdClass)#1 (5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}

Array ( [0] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [1] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [2] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) )

array(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}

能够看看经过json_decode(卡塔尔编写翻译出来的是目的,以后出口json_decode($data,true)试下

 

echo json_decode($data,true);

代码如下:

结果:

$data='[{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""}]';
echo json_decode($data);

Array ( [0] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [1] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [2] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) )

结果为:

能够看看
json_decode($data,trueState of Qatar输出的一个关联数组,由此可以看见json_decode($data)输出的是指标,而json_decode(“$arr”,true卡塔尔国是把它强迫生成PHP关联数组.

代码如下:

2.json_encode()

Array ( [0] => stdClass Object ( [Name] => a1 [Number] =>
123 [Contno] => 000 [QQNo] => ) [1] => stdClass Object (
[Name] => a1 [Number] => 123 [Contno] => 000 [QQNo]
=> ) [2] => stdClass Object ( [Name] => a1 [Number] =>
123 [Contno] => 000 [QQNo] => ) )

json_encode
(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

能够看看经过json_decode(State of Qatar编写翻译出来的是指标,现在出口json_decode($data,true)试下

json_encode — 对变量进行 JSON 编码

代码如下:

Report a bug 说明
string json_encode ( mixed $value [, int $options = 0 ] )
返回 value 值的 JSON 形式

echo json_decode($data,true);

Report a bug 参数

结果:

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

代码如下:

该函数只好选择 UTF-8 编码的数据

Array ( [0] => Array ( [Name] => a1 [Number] => 123
[Contno] => 000 [QQNo] => ) [1] => Array ( [Name] =>
a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [2]
=> Array ( [Name] => a1 [Number] => 123 [Contno] =>
000 [QQNo] => ) )

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.

能够看来
json_decode($data,trueState of Qatar输出的八个涉及数组,由此可见json_decode($data)输出的是目的,而json_decode("$arr",trueState of Qatar是把它压迫生成PHP关联数组.

Report a bug 返回值
编码成功则赶回一个以 JSON 格局表示的 string 也许在曲折时再次回到 FALSE 。

**2.json_encode()

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 参数.

**json_encode
(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

Report a bug 范例

json_encode — 对变量实行 JSON 编码

Example #1 A json_encode() 的例子

Report a bug 说明
string json_encode ( mixed $value [, int $options = 0 ] )
返回 value 值的 JSON 形式

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

echo json_encode($arr); 
?>

Report a bug 参数

如上例程会输出:

value
待编码的 value ,除了resource 类型之外,可感到其余数据类型

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

该函数只好担负 UTF-8 编码的数量

Example #2 json_encode(State of Qatar 函数中 options 参数的用法

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.

<?php 
$a = array('<foo>',"'bar'",'"baz"','&blong&', "\xc3\xa9"); 

echo "Normal: ", json_encode($a), "\n"; 
echo "Tags: ", json_encode($a, JSON_HEX_TAG), "\n"; 
echo "Apos: ", json_encode($a, JSON_HEX_APOS), "\n"; 
echo "Quot: ", json_encode($a, JSON_HEX_QUOT), "\n"; 
echo "Amp: ", json_encode($a, JSON_HEX_AMP), "\n"; 
echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "\n"; 
echo "All: ", json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "\n\n"; 

$b = array(); 

echo "Empty array output as array: ", json_encode($b), "\n"; 
echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "\n\n"; 

$c = array(array(1,2,3)); 

echo "Non-associative array output as array: ", json_encode($c), "\n"; 
echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "\n\n"; 

$d = array('foo' => 'bar', 'baz' => 'long'); 

echo "Associative array always output as object: ", json_encode($d), "\n"; 
echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n"; 
?>

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 参数.

Normal: ["<foo>","'bar'","\"baz\"","&blong&","\u00e9"] 
Tags: ["\u003Cfoo\u003E","'bar'","\"baz\"","&blong&","\u00e9"] 
Apos: ["<foo>","\u0027bar\u0027","\"baz\"","&blong&","\u00e9"] 
Quot: ["<foo>","'bar'","\u0022baz\u0022","&blong&","\u00e9"] 
Amp: ["<foo>","'bar'","\"baz\"","\u0026blong\u0026","\u00e9"] 
Unicode: ["<foo>","'bar'","\"baz\"","&blong&","é"] 
All: ["\u003Cfoo\u003E","\u0027bar\u0027","\u0022baz\u0022","\u0026blong\u0026","é"] 

Empty array output as array: [] 
Empty array output as object: {} 

Non-associative array output as array: [[1,2,3]] 
Non-associative array output as object: {"0":{"0":1,"1":2,"2":3}} 

Associative array always output as object: {"foo":"bar","baz":"long"} 
Associative array always output as object: {"foo":"bar","baz":"long"}

Report a bug 范例

转载本站文章请注明出处:vns威尼斯城官网登入 http://www.tiec-ccpittj.com/?p=5072

上一篇:

下一篇:

相关文章