php curl_exec()
公司寫一個拋xml文檔的程式 拋送url 用如下代碼
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://".$this->IP.$this->URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $this->PARAMETER );
$ret = curl_exec($ch);
curl_close ($ch);
這段代碼所有參數我看了沒有問題
但curl_exec() 返回時false值
我查了下百度說要開啟 extension=php_curl.dll 這個動態庫
----
請問這個動態庫是不是只有在windows下才有。我公司的環境是php 5.3.5 ,linux 環境, 我查了下公司php.ini沒有這個選項。
請問在linux下 如何使用這個函數。要如何配置php.ino
------解決方案--------------------
linux下php擴充curl的安裝
------解決方案--------------------
需要編譯進去,具體方法可以網上查閱一下。
------解決方案--------------------
phpinfo(); 看下curl 是否開啟了。
------解決方案--------------------
.dll 是windows的動態連結程式庫。
linux下是需要 .so擴充。
search一下吧,不少教程
------解決方案--------------------
curl_exec() 返回 false 值
表示串連 "http://".$this->IP.$this->URL 失敗
請檢查 url 真實可用
如果是 curl 擴充沒有載入,則會報函數未定義
------解決方案--------------------
$ch = curl_init();
不報錯
echo $ch;
輸出 Resource id #...
就表示 curl 可用
專業一點就是
if(! function_exists('curl_init')) die 'curl 不可用';
------解決方案--------------------
"http://".$this->IP.$this->URL);
這個地址列印出來。
這個地址有效嗎?
------解決方案--------------------
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://".$this->IP.$this->URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $this->PARAMETER );
$ret = curl_exec($ch);
// 檢查是否有錯誤發生
if( curl_errno ( $ch )) {
echo 'Curl error: ' . curl_error ( $ch );
}
curl_close ($ch);
看看提示什麼。