url_encode
和 url_decode
是 PHP 中用于處理 URL 編碼和解碼的函數。它們可以在需要將特殊字符轉換為 URL 友好格式或者將這些格式還原為原始字符串時使用。
url_encode
:此函數用于將字符串編碼為 URL 安全格式。它會將特殊字符(如空格、引號等)轉換為 %
后跟兩位十六進制數,以便在 URL 中使用。示例:
$string = "Hello, World!";
$encoded_string = urlencode($string);
echo $encoded_string; // 輸出:Hello%2C+World%21
url_decode
:此函數用于將經過 url_encode
編碼的字符串解碼回原始字符串。它會將 %
后跟的十六進制數轉換回相應的特殊字符。示例:
$encoded_string = "Hello%2C+World%21";
$decoded_string = urldecode($encoded_string);
echo $decoded_string; // 輸出:Hello, World!
配合使用 url_encode
和 url_decode
的一個典型場景是在處理查詢參數時。當你需要將包含特殊字符的數據作為查詢參數傳遞給 URL 時,可以使用 url_encode
對其進行編碼。然后,在接收方獲取并處理這些參數時,可以使用 url_decode
對其進行解碼。
示例:
// 發送方
$search_query = "Hello, World!";
$encoded_query = urlencode($search_query);
$url = "https://example.com/search.php?q=" . $encoded_query;
// 接收方 (search.php)
$decoded_query = urldecode($_GET['q']);
echo $decoded_query; // 輸出:Hello, World!