gbk编码文件传输json实例

cline.php

<?php
$str='此地无银三百两';
$str = iconv('gbk', 'utf-8', $str);  //Json只支持utf-8编码,如果不进行转码的话,服务端json_decode()返回null
$str = urlencode($str);
$data = json_encode($str);
$url  = "http://localhost/test/server.php?json=$data";

//初始化
$ch = curl_init();
//设置选项,包括URL
curl_setopt($ch, CURLOPT_URL, "$url");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
//执行并获取HTML文档内容
$output = curl_exec($ch);
//释放curl句柄
curl_close($ch);
//打印获得的数据
print_r($output);
?>

server.php

<?php

$str = $_GET["json"];
$str = json_decode($str);
$str = urldecode($str);
$str = iconv('utf-8', 'gbk', $str); //此处转码是为了在文本和浏览器正常输出gbk格式的中文
var_dump($str);

file_put_contents("./test.log","$str");

echo 'shu chu dao 客户端<br/>';

$errorinfo = json_last_error();  //返回最后发生的错误说明
echo $errorinfo;   //错误信息输出到客户端,输出0表示没有错误

?>

cline.php页面输出(浏览器编码为gbk):

string '此地无银三百两' (length=14)
shu chu dao 客户端
0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值