在PHP 中解碼透過cURL 擷取的Gzip 壓縮網頁
透過cURL 擷取gzip 壓縮的網頁時,通常會傳回壓縮原始資料作為回應。要在 PHP 中正確解碼此數據,可以採用多種方法。
一種方法是將內容寫入暫存檔案並使用 gzopen、gzread 和 gzclose 函數對其進行解壓縮。然而,透過 cURL 的自動編碼功能可以提供更有效的解決方案。
cURL 中的自動編碼
透過將 CURLOPT_ENCODING 選項設為空字串或 'gzip ',cURL會自動啟用自動編碼模式。在此模式下:
設定編碼選項
要啟用自動編碼,請使用以下命令:
<code class="php">curl_setopt($ch, CURLOPT_ENCODING , ''); // Activates 'auto' mode</code>
或者,要在請求標頭中強制進行gzip 編碼,請使用:
<code class="php">curl_setopt($ch, CURLOPT_ENCODING , 'gzip');</code>
結論
自動編碼是解碼gzip 網頁的一種便捷高效的方法在PHP 中通過cURL 檢索。它消除了手動文件處理的需要,並在不犧牲性能的情況下提供無縫解碼。
以上是如何在 PHP 中解碼透過 cURL 檢索的 Gzip 壓縮網頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!