php采用file_get_contents代替使用curl实例 微信登录时不能使用curl_exec 函数
其实这个问题也困扰了我很久!花了一上午的时间进行排查!
最终发现ecshop的小京东模板 后台在阿里云的虚拟主机下不能使用 curl_exec 函数! 也不是不能使用,但是每次代码运行到这里的时候就会出现
服务器不能正常相应的事件!如错误代码:Internet service error 然后就让我们查看日志的操作!我们需要在用到了curl get 和curl post 的地方用file_get_contents函数来代替
就不会出现那样的错误了!具体操作如下
curl get 替代 直接用file_get_contents($url) 就可以了
curl post 替代如下:
function Post($url, $post = null) {
$content = http_build_query($post);
$content_length = strlen($content);
$options = array(
'http' => array(
'method' => 'POST',
'header' =>"Content-type: application/x-www-form-urlencoded",
'content' => $post
)
);
return file_get_contents($url, false, stream_context_create($options));
}
$content = http_build_query($post);
$content_length = strlen($content);
$options = array(
'http' => array(
'method' => 'POST',
'header' =>"Content-type: application/x-www-form-urlencoded",
'content' => $post
)
);
return file_get_contents($url, false, stream_context_create($options));
}
php采用file_get_contents代替使用curl实例
curl 经常使用的 curl get curl post
curl get 替代 直接用file_get_contents($url) 就可以了
curl post 替代如下:
代码如下:
function Post($url, $post = null) {
$content = http_build_query($post);
$content_length = strlen($content);
$options = array(
'http' => array(
'method' => 'POST',
'header' =>"Content-type: application/x-www-form-urlencoded",
'content' => $post
)
);
return file_get_contents($url, false, stream_context_create($options));
}
$content = http_build_query($post);
$content_length = strlen($content);
$options = array(
'http' => array(
'method' => 'POST',
'header' =>"Content-type: application/x-www-form-urlencoded",
'content' => $post
)
);
return file_get_contents($url, false, stream_context_create($options));
}
希望本文所述对大家的php程序设计有所帮助。