在PHP中,可以使用urlencode()
和urldecode()
函數(shù)來(lái)實(shí)現(xiàn)類似于JS中的escape()
和unescape()
方法。
urlencode()
函數(shù)用于將字符串進(jìn)行URL編碼,它會(huì)將特殊字符轉(zhuǎn)換為十六進(jìn)制的ASCII碼值,并在前面加上%
符號(hào)。示例如下:$str = "Hello 世界!";
$encoded_str = urlencode($str);
echo $encoded_str; // 輸出:Hello%20%E4%B8%96%E7%95%8C%21
urldecode()
函數(shù)用于將一個(gè)已經(jīng)進(jìn)行URL編碼的字符串進(jìn)行解碼,將十六進(jìn)制的ASCII碼值轉(zhuǎn)換為對(duì)應(yīng)的字符。示例如下:$encoded_str = "Hello%20%E4%B8%96%E7%95%8C%21";
$decoded_str = urldecode($encoded_str);
echo $decoded_str; // 輸出:Hello 世界!
需要注意的是,urlencode()
和urldecode()
函數(shù)只會(huì)對(duì)特殊字符進(jìn)行編碼和解碼,不會(huì)對(duì)整個(gè)字符串進(jìn)行轉(zhuǎn)義。如果需要對(duì)整個(gè)字符串進(jìn)行轉(zhuǎn)義,可以使用htmlspecialchars()
函數(shù)。
例如,將特殊字符進(jìn)行URL編碼后將其作為URL的一部分時(shí),可以使用urlencode()
函數(shù)。而將特殊字符進(jìn)行HTML轉(zhuǎn)義后將其插入HTML頁(yè)面中時(shí),可以使用htmlspecialchars()
函數(shù)。