- 1、php 編程問題:只對鏈接中的 中文 進行urlencode轉換,怎樣處理
- 2、php的url傳遞中文參數怎樣轉碼
- 3、php中中文如何轉碼
- 4、如何讓中文轉URL編碼
- 5、php 能實現漢字轉url編碼的方法嗎?
用正則表達式匹配中文,在用urlencode替換中文:
function urlencode_ch($str){ //直接用這個函數就可以了
function callback($match){
return urlencode($match[0]);
}
return preg_replace_callback(‘/[^\0-\127]+/’,’callback’,$str);
//正則表達式匹配非單位元組字符(含中文)
}
echo urlencode_ch(‘/2012/新聞/22.html’);
如果編碼是UTF8的話 URL 中的中文會自動轉化成 UTF8編碼,同時解碼時使用urldecode函數即可
應該是沒有URL編碼(一般來說,用默認字符集是沒有問題的)。
URL編碼/解碼,可用函數urlencode()與urldecode()。
還有一個小問題,你有個地方打錯了,在表單中把playerName打成了playerNmae,而iframe的URL中卻是playerName。
iframe代碼改為(你的拼寫錯誤已修正):
iframe id=”aaa” name=”aaa” width=”600″ height=”500″ src=”網址/playerDetail.php?serverName=?php echo urlencode($_GET[“serverName”]); ?playerName=?php echo urlencode($_GET[“playerName”]); ?”/iframe
表單代碼改為:
form action=”22.php” method=”get”
服務器: input type=”text” name=”serverName” /br /
玩家名: input type=”text” name=”playerName” /br /
input type=”submit” /
/form
再試試?
怎麼將漢字轉為url編碼
urlencode()函數原理就是首先把中文字符轉換為十六進制,然後在每個字符前面加一個標識符%。 urldecode()函數與urlencode()函數原理相反,用於解碼已編碼的 URL 字符串,其原理就是把十六進制字符串轉換為中文字符
rawurlencode()函數即可!
示例:
function raw( $String, $en = false) {
return !$en ? rawurldecode( $Strint ) : rawurlencode( $String );
}
echo raw(‘%E5%AE%A2%E6%88%B7’); //輸出: 客戶
echo raw(‘客戶’, true ); //輸出:%E5%AE%A2%E6%88%B7
原創文章,作者:O7GAE,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/127056.html