我有URL字串,類似https://example.com/path/?welcome_screen=1&email_address=something else@example.com
在PHP中,我呼叫<?php echo $_GET['email_address']; ?>
<?php echo $_GET['email_address']; ?>
這將產生something else@example.com
something else@example.com
具體來說,電子郵件地址中的 被替換成了空格。
echo
是的, 是在URL中表示空格的一種方式。 PHP在建立$_GET資料時會自動對值進行URL解碼,並將其轉換為空格,因為它假設這就是原始URL中的值應該表示的內容。
$_GET
不,那時已經太晚了。
是的,您應該在將值包含在URL中之前進行URL編碼,以便 不被視為特殊字元。如果是PHP產生URL,您可以使用urlencode()函數。大多數其他程式語言都有等效的內建函數。
urlencode()
是的,
是在URL中表示空格的一種方式。 PHP在建立
$_GET
資料時會自動對值進行URL解碼,並將其轉換為空格,因為它假設這就是原始URL中的值應該表示的內容。不,那時已經太晚了。
是的,您應該在將值包含在URL中之前進行URL編碼,以便
不被視為特殊字元。如果是PHP產生URL,您可以使用
urlencode()
函數。大多數其他程式語言都有等效的內建函數。