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