3v4l.org

run code in 300+ PHP versions simultaneously
<?php // UTF-16 surrogate codepoints have no valid encoding in any UTF form. // https://en.wikipedia.org/wiki/UTF-16#U.2BD800_to_U.2BDFFF // If they could be validly represented in UTF-8 their bytes // would be: $high = "\xED\xa1\x92"; // codepoint D852 $low = "\xED\xBD\xA2"; // codepoint DF62 $pair = $high.$low; var_dump( @\iconv('UTF-8', 'UTF-8', $high) === false, @\iconv('UTF-8', 'UTF-8', $low) === false, @\iconv('UTF-8', 'UTF-8', $pair) === false ); /* Should be: * bool(true) * bool(true) * bool(true) * * Result on Windows with 7.0 or 7.1 is: * bool(false) * bool(false) * bool(false) */

preferences:
67.65 ms | 402 KiB | 5 Q