PHP code example of algo26-matthias / idna-convert
1. Go to this page and download the library: Download algo26-matthias/idna-convert library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
algo26-matthias / idna-convert example snippets
// Include the class
use Algo26\IdnaConvert\ToIdn;
// Instantiate it
$IDN = new ToIdn();
// The input string, if input is not UTF-8 or UCS-4, it must be converted before
$input = utf8_encode('nörgler.com');
// Encode it to its punycode presentation
$output = $IDN->convert($input);
// Output, what we got now
echo $output; // This will read: xn--nrgler-wxa.com
// Include the class
use Algo26\IdnaConvert\ToUnicode;
// Instantiate it
$IDN = new ToUnicode();
// The input string
$input = '[email protected]';
// Encode it to its punycode presentation
$output = $IDN->convertEmailAddress($input);
// Output, what we got now, if output should be in a format different to UTF-8
// or UCS-4, you will have to convert it before outputting it
echo utf8_decode($output); // This will read: andre@börse.knörz.info
// Include the class
use Algo26\IdnaConvert\ToIdn;
use Algo26\IdnaConvert\TranscodeUnicode\TranscodeUnicode;
// Instantiate
$IDN = new ToIdn();
$UCTC = new TranscodeUnicode();
// Iterate through the input file line by line
foreach (file('ucs4-domains.txt') as $line) {
$utf8String = $UCTC->convert(trim($line), 'ucs4', 'utf8');
echo $IDN->convert($utf8String);
echo "\n";
}
// Include the class
use Algo26\IdnaConvert\ToIdn;
// Instantiate it
$IDN = new ToIdn();
// The input string, a whole URI in UTF-8 (!)
$input = 'http://nörgler:secret@nörgler.com/my_päth_is_not_ÄSCII/');
// Encode it to its punycode presentation
$output = $IDN->convertUrl($input);
// Output, what we got now
echo $output; // http://nörgler:[email protected]/my_päth_is_not_ÄSCII/
// Include the class
use Algo26\IdnaConvert\ToIdn;
// Instantiate it, switching to IDNA 2003, the original, now outdated standard
$IDN = new ToIdn(2008);
// Sth. containing the German letter ß
$input = 'meine-straße.example';
// Encode it to its punycode presentation
$output = $IDN->convert($input);
// Output, what we got now
echo $output; // xn--meine-strae-46a.example
// Switch back to IDNA 2008
$IDN = new ToIdn(2003);
// Sth. containing the German letter ß
$input = 'meine-straße.example';
// Encode it to its punycode presentation
$output = $IDN->convert($input);
// Output, what we got now
echo $output; // meine-strasse.example
use Algo26\IdnaConvert\ToIdn;
use Algo26\IdnaConvert\EncodingHelper\ToUtf8;
$IDN = new ToIdn();
$encodingHelper = new ToUtf8();
$mystring = $encodingHelper->convert('<something in e.g. ISO-8859-15', 'ISO-8859-15');
echo $IDN->convert($mystring);
use Algo26\IdnaConvert\TranscodeUnicode\TranscodeUnicode;
$transcodeUnicode = new TranscodeUnicode();
$mystring = 'nörgler.com';
echo $transcodeUnicode->convert($mystring, 'utf8', 'utf7imap');
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.