ข้อผิดพลาดในการตรวจสอบและจัดการคือเพื่อนของโปรแกรมเมอร์ ตรวจสอบค่าส่งคืนของการเริ่มต้นและการเรียกใช้ฟังก์ชัน cURL curl_error()
และcurl_errno()
จะมีข้อมูลเพิ่มเติมในกรณีที่เกิดความล้มเหลว:
try {
$ch = curl_init();
// Check if initialization had gone wrong*
if ($ch === false) {
throw new Exception('failed to initialize');
}
curl_setopt($ch, CURLOPT_URL, 'http://example.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt(/* ... */);
$content = curl_exec($ch);
// Check the return value of curl_exec(), too
if ($content === false) {
throw new Exception(curl_error($ch), curl_errno($ch));
}
/* Process $content here */
// Close curl handle
curl_close($ch);
} catch(Exception $e) {
trigger_error(sprintf(
'Curl failed with error #%d: %s',
$e->getCode(), $e->getMessage()),
E_USER_ERROR);
}
* curl_init()
คู่มือฯ :
ส่งคืนการจัดการ cURL สำหรับความสำเร็จFALSEเมื่อข้อผิดพลาด
ฉันสังเกตเห็นว่าฟังก์ชันจะส่งคืนFALSE
เมื่อคุณใช้$url
พารามิเตอร์และโดเมนไม่สามารถแก้ไขได้ ถ้าพารามิเตอร์คือไม่ได้ใช้ฟังก์ชั่นอาจจะFALSE
ไม่กลับมา อย่างไรก็ตามควรตรวจสอบเสมอเนื่องจากคู่มือไม่ได้ระบุอย่างชัดเจนว่า "ข้อผิดพลาด" คืออะไร
curl_error()
ดูรายละเอียดข้อผิดพลาดและโพสต์ที่นี่