5

PHP 5.3には非常に便利な関数idn_to_ascii()がありますが、私は5.2.17を実行しており、それを変更することはできません。次に、Unicodeドメイン名をASCIIにエンコードするにはどうすればよいですか?

4

3 に答える 3

6

Peterの答えは、PHP 5.2の公式IDN関数を示しており、可能であれば、それがおそらく最良の答えです。

ただし、一部のユーザーはPHPシステムにPECLライブラリをインストールできないため、自分のコードに含めることができるプレーンPHPで記述された変換ライブラリが必要になります。

幸いなことに、解決策があります:http: //phlymail.com/en/downloads/idna/

これは、Unicodeとpunycodeの間でエンコードおよびデコードできるPHPクラスです。使い方は非常に簡単で、インストールは必要ありません(ダウンロードして独自のPHPコードに含める以外)。

PHP 5.3以降を使用している場合、またはPECLライブラリをPHP 5.2にインストールできる場合は、明らかにこれは必要ありませんが、それができない場合は、これが適切な代替手段です。

于 2011-08-30T10:21:24.927 に答える
5

見積もり:

この拡張機能は、PHP 5.3.0 のバンドル バージョンを使用してインストールするか、PHP 5.2.0 の PECL 拡張機能としてインストールできます。つまり、intl 拡張機能をインストールするには 2 つの方法があります。

手順はこちら

一般的なインストール手順

pecl install intl
pecl install idn

次に、php.ini または関連する構成ファイルに拡張機能を追加します。

于 2011-03-23T12:56:18.693 に答える