ホームページ  >  記事  >  バックエンド開発  >  PHP は中国語の URL を含むメソッド コード例をどのように処理しますか?

PHP は中国語の URL を含むメソッド コード例をどのように処理しますか?

怪我咯
怪我咯オリジナル
2017-07-06 09:45:471010ブラウズ

この記事では、PHP で漢字を含む URL を処理する方法を主に紹介し、PHP エンコード変換に関連する操作テクニックを紹介します。必要な方は参考にしてください。 PHP での中国語の文字を含む URL。参考のために皆さんと共有してください。詳細は次のとおりです:

ie6

ハイパーリンク

中国語の文字があると問題が発生します。邪悪なie6は、組み込みのurlencode関数を使用しても動作しません。スラッシュやその他の ASCII コード文字も処理します。エンコード後も問題は解決できません。原理は非常に簡単です。つまり、127 より大きいすべてのバイトを 16 進数に変換します。ハイパーリンクアドレス

// utf-8编码
$url = 'http://ftp.php.cn/PHP视频教程.rar';
//urlencode结果:
echo urlencode($url);
http%3A%2F%2Fftp1.zdy.co%2Fmovie%2F%E6%88%91%E4%B8%BA%E7%9B%B8%E4%BA%B2%E7%8B%82.rmvb
//link_urldecode结果:
echo link_urldecode($url);
http://ftp1.zdy.co/movie/%E6%88%91%E4%B8%BA%E7%9B%B8%E4%BA%B2%E7%8B%82.rmvb
//link_urldecode函数:
function link_urldecode($url) {
  $uri = '';
  $cs = unpack('C*', $url);
  $len = count($cs);
  for ($i=1; $i<=$len; $i++) {
    $uri .= $cs[$i] > 127 ? &#39;%&#39;.strtoupper(dechex($cs[$i])) : $url{$i-1};
  }
  return $uri;
}

以上がPHP は中国語の URL を含むメソッド コード例をどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。