3v4l.org

run code in 300+ PHP versions simultaneously
<?php function character_iterator ($str) { $len=strlen($str); for ($i=0;$i<$len;++$i) yield ord($str[$i]); } function code_point_iterator ($str) { $i=0; $cp=0; foreach (character_iterator(iconv('utf-8','utf-32be',$str)) as $b) { if ($i===4) { $i=0; yield $cp; $cp=0; } $cp<<=8; $cp|=$b; ++$i; } if ($i!==0) yield $cp; } foreach (code_point_iterator('всем привет') as $cp) var_dump(\IntlChar::charName($cp)); ?>
Output for 8.0.14 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
Warning: iconv(): Wrong encoding, conversion from "utf-8" to "utf-32be" is not allowed in /in/FMsh4 on line 14
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Warning: iconv(): Wrong encoding, conversion from "utf-8" to "utf-32be" is not allowed in /in/FMsh4 on line 14
Output for 7.3.32 - 7.3.33, 7.4.33, 8.0.13
Fatal error: Uncaught Error: Call to undefined function iconv() in /in/FMsh4:14 Stack trace: #0 /in/FMsh4(33): code_point_iterator('\xD0\xB2\xD1\x81\xD0\xB5\xD0\xBC \xD0\xBF\xD1\x80\xD0\xB8...') #1 {main} thrown in /in/FMsh4 on line 14
Process exited with code 255.
Output for 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.31, 7.4.0 - 7.4.25, 8.0.0 - 8.0.12
string(24) "CYRILLIC SMALL LETTER VE" string(24) "CYRILLIC SMALL LETTER ES" string(24) "CYRILLIC SMALL LETTER IE" string(24) "CYRILLIC SMALL LETTER EM" string(5) "SPACE" string(24) "CYRILLIC SMALL LETTER PE" string(24) "CYRILLIC SMALL LETTER ER" string(23) "CYRILLIC SMALL LETTER I" string(24) "CYRILLIC SMALL LETTER VE" string(24) "CYRILLIC SMALL LETTER IE" string(24) "CYRILLIC SMALL LETTER TE"
Output for 7.4.26 - 7.4.32
Notice: iconv(): Wrong charset, conversion from `utf-8' to `utf-32be' is not allowed in /in/FMsh4 on line 14
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.40
Fatal error: Class 'IntlChar' not found in /in/FMsh4 on line 33
Process exited with code 255.

preferences:
215.66 ms | 402 KiB | 335 Q