PHP 中URL 的字串編碼
查詢值編碼
使用查詢參數建構URL 時,例如「search.php?query=您的查詢”,正確編碼查詢值至關重要。為此,建議的函數是:
-
urlencode():根據“application/x-www-form-urlencoded”標準對查詢值進行編碼,轉換空格到“ 」。
-
urldecode():解碼已使用編碼的查詢值urlencode().
URI 路徑編碼
對於編碼URI 路徑或編碼URI 路徑URL 中非查詢參數的其他部分,可以使用不同的函數:
-
rawurlencode():使用百分比編碼標準對字串進行編碼,將空格轉換為“ ".
-
rawurldecode():解碼使用rawurlencode()編碼的字串。
建構查詢字串
產生完整的查詢字串,建議使用 http_build_query() 函式。它接受一個鍵值對數組並傳回一個正確編碼的查詢字串。
urlencode() 和rawurlencode() 之間的區別
雖然urlencode() 和rawurlencode() 都執行URL 編碼,它們在處理某些字元的方式上有所不同:
- urlencode()將空格編碼為“”符合“application/x-www-form-urlencoded”標準。
- rawurlencode() 依照百分比編碼標準將空格編碼為「」。
理解這種區別是對於在 URL 內的不同上下文中正確編碼字串至關重要。
以上是如何在 PHP 中正確編碼 URL 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!