本文主要和大家分享php檔案上傳需要注意哪些事項,希望能協助到大家。
php版本區別:
<=5.4 curl上傳檔案只支援@文法= 5.5 支援@文法和CURLFile類大於=5.6 只支援CURLFile類
// 相容性寫法參考樣本
$curl = curl_init();if (class_exists('\CURLFile')) {// 這裡用特性檢測判斷php版本 curl_setopt($curl, CURLOPT_SAFE_UPLOAD, true); $data = array('file' => new \CURLFile(realpath($source)));//>=5.5 } else { if (defined('CURLOPT_SAFE_UPLOAD')) { curl_setopt($curl, CURLOPT_SAFE_UPLOAD, false); } $data = array('file' => '@' . realpath($source));//<=5.5 } curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_POST, 1 ); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_USERAGENT,"TEST"); $result = curl_exec($curl); $error = curl_error($curl);
php版本區別:
<=5.4 curl上傳檔案只支援@文法= 5.5 支援@文法和CURLFile類大於=5.6 只支援CURLFile類
// 相容性寫法參考樣本
$curl = curl_init();if (class_exists('\CURLFile')) {// 這裡用特性檢測判斷php版本 curl_setopt($curl, CURLOPT_SAFE_UPLOAD, true); $data = array('file' => new \CURLFile(realpath($source)));//>=5.5 } else { if (defined('CURLOPT_SAFE_UPLOAD')) { curl_setopt($curl, CURLOPT_SAFE_UPLOAD, false); } $data = array('file' => '@' . realpath($source));//<=5.5 } curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_POST, 1 ); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_USERAGENT,"TEST"); $result = curl_exec($curl); $error = curl_error($curl);