文档归类:编程开发
php异步请求,异步处理机制,网页异步获取数据
[php]
/**
* 发送HTTP请求并获得响应
* @param url 请求的url地址
* @param param 发送的http参数
*/
function makeRequest($url, $param, $httpMethod = 'GET') {
$oCurl = curl_init();
if (stripos($url, "https://") !== FALSE) {
curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, FALSE);
}
if ($httpMethod == 'GET') {
curl_setopt($oCurl, CURLOPT_URL, $url . "?" . http_build_query($param));
curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1);
} else {
curl_setopt($oCurl, CURLOPT_URL, $...
此文只应天上有,仰望去»
php json_decode,php使用json_decode返回NULL
在使用Thinkphp做项目的时候经常用到jquery ajax获取数据,从PHP页面返回JSON数据,但是有时中方字体出现空白的现象。
php5.2以后自带json_decode函数,但是对json文本串的格式要求非常严格。
很可能使用该函数得到的返回值是NULL
使用json_last_error()函数获取到的返回值是JSON_ERROR_SYNTAX(Syntax error)。
可以通过以下几个方式排错。
1. json字符串必须以双引号包含
$output = str_replace("'", '"', $output);
2. json字符串必须是utf8编码
$output = iconv('gbk', 'utf8', $output);
3.不能有多余的逗号 如:[1,2,]
用正则替换掉,preg_replace('/,\s*([\]}])/m', '$1', $output) ...
从来不放弃这样的美文»