php中解析帶中文字元的url怎麼做?

來源:互聯網
上載者:User
URL(Uniform Resoure Locator:統一資源定位器)是WWW頁的地址,它從左至右由下述部分組成:
·Internet資源類型(scheme):指出WWW客戶程式用來操作的工具。如“http://”表示WWW伺服器,“ftp://”表示FTP伺服器,“gopher://”表示Gopher伺服器,而“new:”表示Newgroup新聞群組。
·伺服器位址(host):指出WWW頁所在的伺服器網域名稱。
·連接埠(port):有時(並非總是這樣),對某些資源的訪問來說,需給出相應的伺服器提供連接埠號碼。
·路徑(path):指明伺服器上某資源的位置(其格式與DOS系統中的格式一樣,通常有目錄/子目錄/檔案名稱這樣結構組成)。與連接埠一樣,路徑並非總是需要的。
URL地址格式排列為:scheme://host:port/path,例如http://www.sohu.com/domain/HXWZ就是一個典型的URL地址。

這篇文章主要介紹了php中解析帶中文字元的url函數分享,本文直接給出實現代碼,重點是對rawurlencode函數的使用上,需要的朋友可以參考下

很多時候,在書寫網頁應用程式時候,會遇到中文和其他字元衝突的問題,例如有的url連結中包含中文字元,那麼在使用wget/curl/file_get_contents等等擷取資訊時候會直接撞上一個大大的“404”,會很無語。

這裡寫了一個小函數來解決這個問題,只是限於在path中進行解析而已,涉及到的相關函數使用大家可以查看手冊就行。

代碼如下:

function urlConvert($url){           $pathArr = array();           $modules = parse_url($url);           $path = $modules['path'];           $pathSplit = explode(‘/', $path);                  foreach ($pathSplit as $row){               $pathArr[] = rawurlencode($row);           }           $urlNew = $modules['scheme']."://".$modules['host'].implode(‘/', $pathArr);           return $urlNew;       }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.