国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP url中文編碼cn_urlencode函數(shù)

2024-09-04 11:48:18
字體:
來源:轉載
供稿:網(wǎng)友

PHP中對于URL進行編碼,可以使用 urlencode() 或者rawurlencode(),二者的區(qū)別是前者把空格編碼為 /'+/',而后者把空格編碼為 /'%20/',不過應該注意的是,在編碼時應該只對部分URL編碼,否則URL中的冒號和反斜杠也會被轉義.下面是詳細解釋:

string urlencode ( string str)

返回字符串,此字符串中除了 -_. 之外的所有非字母數(shù)字字符都將被替換成百分號(%)后跟兩位十六進制數(shù),空格則編碼為加號(+).

例子 1 :urlencode函數(shù)與rawurlencode函數(shù)區(qū)別

實例代碼如下:

  1. <?php 
  2.     $str='博 客'
  3.     echo urlencode($str); 
  4.     echo "<br>"
  5.     echo rawurlencode($str); 
  6. ?> 

url結果:

%B2%A9+%BF%CD

%B2%A9%20%BF%CD例子 2 :url中文編碼方法

從url:"http://www.baidu.com/s?wd=博 客" 轉為 url:http://www.baidu.com/s?wd=%E5%8D%9A%20%E5%AE%A2;

實例代碼如下:

  1. <?php 
  2.     $url='http://www.baidu.com/s?wd=博 客'
  3.     $arr=explode('=',$url); 
  4.     $url=$arr[0].'='.rawurlencode($arr[1]); 
  5.     echo $url
  6. ?> 

結果:

http://www.baidu.com/s?wd=%E5%8D%9A%20%E5%AE%A2

或許用以下url編碼函數(shù)

實例代碼如下:

  1. <?php 
  2. function cn_urlencode($url){ 
  3.      $pregstr = "/[x{4e00}-x{9fa5}]+/u";//UTF-8中文正則 
  4.     if(preg_match_all($pregstr,$url,$matchArray)){//匹配中文,返回數(shù)組 
  5.         foreach($matchArray[0] as $key=>$val){ 
  6.             $url=str_replace($val, urlencode($val), $url);//將轉譯替換中文 
  7.         } 
  8.         if(strpos($url,' ')){//若存在空格 
  9.             $url=str_replace(' ','%20',$url); 
  10.         } 
  11.     } 
  12.     return $url
  13.     echo  cn_urlencode($url); 
  14. ?> 

url結果:

http://www.baidu.com/s?wd=%E5%8D%9A%20%E5%AE%A2

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 霍林郭勒市| 启东市| 思南县| 新昌县| 淮阳县| 比如县| 琼中| 修文县| 平度市| 寻乌县| 秦安县| 临漳县| 化德县| 莱州市| 泰来县| 仙居县| 象州县| 淮滨县| 松阳县| 阿拉善右旗| 太湖县| 依安县| 隆昌县| 宁波市| 郧西县| 江都市| 平和县| 合作市| 清水河县| 射阳县| 鞍山市| 梧州市| 和田市| 和政县| 冷水江市| 罗江县| 右玉县| 安化县| 大荔县| 余姚市| 盘锦市|