函式名:EventBufferEvent::getDnsErrorString()
函式描述:該函式用於獲取最近一次 DNS 錯誤的錯誤訊息。
適用版本:libevent 2.4.0 或以上版本
用法示例:
// 建立一個 EventBufferEvent 物件
$base = event_base_new();
$dns_base = event_dns_base_new($base, true);
$bev = EventBufferEvent::socketNew($base, -1, EventBufferEvent::OPT_CLOSE_ON_FREE);
$bev->setDnsBase($dns_base);
// 進行 DNS 解析
$address = "example.com";
if (!$bev->connectHost($dns_base, $address, 80, EventBufferEvent::OPT_CLOSE_ON_FREE)) {
echo "DNS 解析失敗:" . $bev->getDnsErrorString() . PHP_EOL;
}
// 獲取最近一次 DNS 錯誤的錯誤訊息
$errorString = $bev->getDnsErrorString();
if (!empty($errorString)) {
echo "最近一次 DNS 錯誤的錯誤訊息:" . $errorString . PHP_EOL;
} else {
echo "沒有 DNS 錯誤。" . PHP_EOL;
}
注意事項:
- 在使用該函式前,需先建立一個 EventBufferEvent 物件並與事件庫關聯。
- 本函式僅在 DNS 解析出錯時才會有返回值,若最近一次 DNS 解析成功,則返回為空字串。
- EventBufferEvent 類的相關操作需要 libevent 擴充套件庫的支援,確保已正確安裝和啟用相關擴充套件。