PHP基于curl post实现发送url及相关中文乱码问题解决方法


Posted in PHP onNovember 25, 2017

本文实例讲述了PHP基于curl post实现发送url及相关中文乱码问题解决方法。分享给大家供大家参考,具体如下:

这个问题困扰我几天了,发送的指定网址的url参数,中文总是乱码,指定网址是utf8编码的,我发送的也是utf8编码的。但是还是乱码,开始用的file_get_contents,后来换成curl并在php.ini中开启了php_curl,还是不行,又加了header终于解决。代码如下:

$url = 'http://'; //调用接口的平台服务地址
$post_string = array('a'=>'b');
$ch = curl_init();
$this_header = array(
"content-type: application/x-www-form-urlencoded; 
charset=UTF-8"
);
curl_setopt($ch,CURLOPT_HTTPHEADER,$this_header);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$result = curl_exec($ch);
if($result)
echo "<script>\nalert(\"同步成功! \");\n</script>";
curl_close($ch);

总结:解决此类编码问题,首先,要确认两个地方的编码是什么,其次,如果编码相同那么可以直接发送,使用curl需要加header设置charset,最后,多查多试,一种方法不行再换另一个试试,如果都不行,那么就从头再考虑一遍问题,总能解决的。

PS:这里将content-type设置为:application/x-www-form-urlencoded;本站前面一篇https://3water.com/article/129039.htm针对content-type的原理与设置方法做了较为详尽的说明,有助于读者进一步加深理解。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 将字符串按大写字母分隔成字符串数组
Apr 30 PHP
php下mysql数据库操作类(改自discuz)
Jul 03 PHP
PHP中遇到BOM、编码导致json_decode函数无法解析问题
Jul 02 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 PHP
Laravel 4 初级教程之视图、命名空间、路由
Oct 30 PHP
php返回字符串中所有单词的方法
Mar 09 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
Dec 25 PHP
php ucwords() 函数将字符串中每个单词的首字符转换为大写(实现代码)
May 12 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 PHP
laravel dingo API返回自定义错误信息的实例
Sep 29 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
Dec 13 PHP
laravel入门知识点整理
Sep 15 PHP
php图片合成方法(多张图片合成一张)
Nov 25 #PHP
PHP简单实现二维数组的矩阵转置操作示例
Nov 24 #PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
Nov 24 #PHP
PHP+Apache环境中如何隐藏Apache版本
Nov 24 #PHP
实例分析基于PHP微信网页获取用户信息
Nov 24 #PHP
thinkPHP通用控制器实现方法示例
Nov 23 #PHP
PHP substr()函数参数解释及用法讲解
Nov 23 #PHP
You might like
thinkphp 一个页面使用2次分页的实现方法
2013/07/15 PHP
PHP中使用localhost连接Mysql不成功的解决方法
2014/08/20 PHP
PHP中创建和验证哈希的简单方法实探
2015/07/06 PHP
基于PHP如何把汉字转化为拼音
2015/12/11 PHP
Laravel 默认邮箱登录改成用户名登录的实现方法
2019/08/12 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
关于window.pageYOffset和document.documentElement.scrollTop
2011/04/05 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
AngularJS中watch监听用法分析
2016/11/04 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
2017/03/02 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
Angular4 ElementRef的应用
2018/02/26 Javascript
老生常谈JS中的继承及实现代码
2018/07/06 Javascript
浅谈layer的Icon样式以及一些常用的layer窗口使用方法
2019/09/11 Javascript
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
Python 2.7.x 和 3.x 版本的重要区别小结
2014/11/28 Python
python3序列化与反序列化用法实例
2015/05/26 Python
在Python的Flask框架中验证注册用户的Email的方法
2015/09/02 Python
Python实现模拟时钟代码推荐
2015/11/08 Python
Python自然语言处理 NLTK 库用法入门教程【经典】
2018/06/26 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
Python实现的爬取百度文库功能示例
2019/02/16 Python
python处理RSTP视频流过程解析
2020/01/11 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
2020/03/18 Python
python-图片流传输的思路及示例(url转换二维码)
2020/12/21 Python
美国时尚假发购物网站:Wigsbuy
2019/04/06 全球购物
什么是接口(Interface)?
2013/02/01 面试题
what is the difference between ext2 and ext3
2015/08/25 面试题
质检的岗位职责
2013/11/17 职场文书
代理协议书范本
2014/04/22 职场文书
医院院务公开实施方案
2014/05/03 职场文书
2015年科研工作总结范文
2015/05/13 职场文书
大学生创业计划书常用模板
2019/08/07 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python