Skip to content

A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA) for PHP. Actively maintained alternative can be found here: https://github.com/symfony/polyfill-intl-idn

License

Notifications You must be signed in to change notification settings

SlavaAurim/php-punycode

 
 

Repository files navigation

Punycode

Build Status Scrutinizer Code Quality Code Coverage Latest Stable Version

A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA).

Install

composer require true/punycode:~2.0

Usage

<?php

// Import Punycode
use TrueBV\Punycode;

$Punycode = new Punycode();
var_dump($Punycode->encode('renangonçalves.com'));
// outputs: xn--renangonalves-pgb.com

var_dump($Punycode->decode('xn--renangonalves-pgb.com'));
// outputs: renangonçalves.com

FAQ

1. What is this library for?

This library converts a Unicode encoded domain name to a IDNA ASCII form and vice-versa.

2. Why should I use this instead of PHP's IDN Functions?

If you can compile the needed dependencies (intl, libidn) there is not much difference. But if you want to write portable code between hosts (including Windows and Mac OS), or can't install PECL extensions, this is the right library for you.

About

A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA) for PHP. Actively maintained alternative can be found here: https://github.com/symfony/polyfill-intl-idn

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%