IDN関数を使うにはintlモジュールのインストールが必要で、PHP5.3.0以降であれば同梱されているっぽい。
CentOS6での確認方法とインストール方法
<モジュールの確認>
php -m | grep intl
<インストール方法>
yum install php-intl
IDNとは何かというと
また、IDNの実現のために使われる技術や処理手順を規定したものを IDNA(Internationalizing Domain Name in Application) と呼ぶ。
以下のサイトに詳しいことが書いてある。
国際化ドメイン名 - JPNIC https://www.nic.ad.jp/ja/dom/idn.html
関数と使い方
intlモジュールをいれると以下の関数が使えるようになる。 ・idn_to_ascii ドメイン名をIDNAのASCII形式へ変換 ・idn_to_utf8 IDNAのASCII形式でエンコードされたドメイン名をUnicodeへ変換
echo idn_to_ascii('ホゲホゲ.com '); =>xn--zckzah.com xn--zckzah.com echo idn_to_utf8('xn--zckzah.com '); => ホゲホゲ.com