json_encode()

json_encode()函数对 数组进行JSON编码。
<?php
$arr = array
       (
          'Name'=>'我是希瑞',
          'Age'=>20,
        'liliang'=>'赐我力量吧!'
       );
$jsonencode = json_encode($arr);
echo $jsonencode;


?>
以上例程会输出:
{"Name":"\u6211\u662f\u5e0c\u745e","Age":20,"liliang":"\u8d50\u6211\u529b\u91cf\u5427\uff01"}
________________________________________________________________________________________

注意:以下代码是要页面的编码是gbk的情况

(以下代码已经测试通过,可以直接运行查看)

<?php

/**

* 解决json_encode不支持中文问题

*

* @Package 

* @Copyright (c) 1998-2012 All RightsReserved

* @Author 

* @Version $Id$

*/

/**

* 对变量或者数据进行urlencode编码,使得在进行json_encode的时候进行编码的不是中文,防止json_encode失败

* @access private

* @param $var

* @return array

*/

function var_urlencode($var) {

if (empty ( $var )) {

return false;

}

 

if (is_array ( $var )) {

foreach ( $var as $k => $v ) {

if (is_scalar ( $v )) {//if用来处理不是数组的情况

$var [$k] = urlencode ( $v );

}

else {//else用来处理数组

$var [$k] = var_urlencode ( $v );

}

}

}

 

else {//用来处理数组

$var = urlencode ( $var );

}

return $var;

}

/**

* 对编码后的变量进行json_encode,json_encode不支持中文的问题

* @access public

* @param $var

* @return string

*/

function var_json_encode($var) {

$_var = var_urlencode($var);

$_str = json_encode($_var);

return urldecode($_str);

}

/*Test*/

$array = array (

'name' => '路人甲', 

'age' => '13', 

'profile' => array (

'uid' => 12, 

'uname' => 'lili',

'school' => '中学', 

'info' => array (

'hometown' => '亚洲', 

'fond' => '苹果',

'tool' => 'bike',

),

),

);

$json_str = var_json_encode($array);

echo $json_str;

/*浏览器中的输出结果:

 

{"name":"路人甲","age":"13","profile":{"uid":"12","uname":"lili","school":"中学","info":{"hometown":"亚洲","fond":"苹果","tool":"bike"}}} */

 

$var = array("中国人", "日本人", "美国人");

echo var_json_encode($var);

 

/*浏览器中的输入结果:

["中国人","日本人","美国人"] 

*/

?>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值