idn_to_ascii () в 5.2.17 - PullRequest
       40

idn_to_ascii () в 5.2.17

5 голосов
/ 23 марта 2011

Есть очень удобная функция idn_to_ascii () в PHP 5.3, но я использую 5.2.17 и не могу это изменить.Как мне тогда кодировать доменные имена Unicode в ascii?

Ответы [ 3 ]

6 голосов
/ 30 августа 2011

Ответ Питера дает вам официальные функции IDN в PHP 5.2, и, если возможно, это, вероятно, лучший ответ.

Однако некоторые пользователи не смогут установить библиотеку PECL в своей системе PHP, поэтому им потребуетсяиметь библиотеку преобразования, написанную на простом PHP, которую они могут просто включить в свой собственный код.

К счастью, есть решение: http://phlymail.com/en/downloads/idna/

Это класс PHP, который позволяет вам кодироватьи декодировать между Unicode и Punycode.Очень прост в использовании и не требует какой-либо установки (кроме загрузки и включения в ваш собственный код PHP).

Очевидно, что вам это не нужно, если вы используете PHP 5.3 или выше, илиесли вы можете установить библиотеку PECL в PHP 5.2, но если вы не можете этого сделать, это хорошая альтернатива.

5 голосов
/ 23 марта 2011

Цитата:

Это расширение может быть установлено с помощью версия в комплекте с PHP 5.3.0, или как расширение PECL от PHP 5.2.0. Другими словами, есть два способа установить расширение intl.

Инструкции здесь

Общие инструкции по установке

pecl install intl
pecl install idn

Затем добавьте расширения в ваш php.ini или соответствующие файлы конфигурации.

0 голосов
/ 11 июня 2018

Кроме того, вы можете установить его, используя apt-get:

sudo apt-get install php7.x-intl

Вам нужно заменить 'x' на текущую версию php, которую вы сейчас установили.

...