3v4l.org

run code in 300+ PHP versions simultaneously
<?php $all = '\nbackspace %08' . '\ntab %09' . '\nlinefeed %0A' . '\ncreturn %0D' . '\nspace %20' . '\n! %21' . '\n" %22' . '\n# %23' . '\n$ %24' . '\n% %25' . '\n& %26' . "' %27" . '\n( %28' . '\n) %29' . '\n* %2A' . '\n+ %2B' . '\n, %2C' . '\n- %2D' . '\n. %2E' . '\n/ %2F' . '\n0 %30' . '\n1 %31' . '\n2 %32' . '\n3 %33' . '\n4 %34' . '\n5 %35' . '\n6 %36' . '\n7 %37' . '\n8 %38' . '\n9 %39' . '\n: %3A' . '\n; %3B' . '\n< %3C' . '\n= %3D' . '\n> %3E' . '\n? %3F' . '\n@ %40' . '\nA %41' . '\nB %42' . '\nC %43' . '\nD %44' . '\nE %45' . '\nF %46' . '\nG %47' . '\nH %48' . '\nI %49' . '\nJ %4A' . '\nK %4B' . '\nL %4C' . '\nM %4D' . '\nN %4E' . '\nO %4F' . '\nP %50' . '\nQ %51' . '\nR %52' . '\nS %53' . '\nT %54' . '\nU %55' . '\nV %56' . '\nW %57' . '\nX %58' . '\nY %59' . '\nZ %5A' . '\n[ %5B' . '\n\ %5C' . '\n] %5D' . '\n^ %5E' . '\n_ %5F' . '\n` %60' . '\na %61' . '\nb %62' . '\nc %63' . '\nd %64' . '\ne %65' . '\nf %66' . '\ng %67' . '\nh %68' . '\ni %69' . '\nj %6A' . '\nk %6B' . '\nl %6C' . '\nm %6D' . '\nn %6E' . '\no %6F' . '\np %70' . '\nq %71' . '\nr %72' . '\ns %73' . '\nt %74' . '\nu %75' . '\nv %76' . '\nw %77' . '\nx %78' . '\ny %79' . '\nz %7A' . '\n{ %7B' . '\n| %7C' . '\n} %7D' . '\n~ %7E' . '\n¢ %A2' . '\n£ %A3' . '\n¥ %A5' . '\n| %A6' . '\n§ %A7' . '\n« %AB' . '\n¬ %AC' . '\n¯ %AD' . '\nº %B0' . '\n± %B1' . '\nª %B2' . '\n, %B4' . '\nµ %B5' . '\n» %BB' . '\n¼ %BC' . '\n½ %BD' . '\n¿ %BF' . '\nÀ %C0' . '\nÁ %C1' . '\n %C2' . '\nà %C3' . '\nÄ %C4' . '\nÅ %C5' . '\nÆ %C6' . '\nÇ %C7' . '\nÈ %C8' . '\nÉ %C9' . '\nÊ %CA' . '\nË %CB' . '\nÌ %CC' . '\nÍ %CD' . '\nÎ %CE' . '\nÏ %CF' . '\nÐ %D0' . '\nÑ %D1' . '\nÒ %D2' . '\nÓ %D3' . '\nÔ %D4' . '\nÕ %D5' . '\nÖ %D6' . '\nØ %D8' . '\nÙ %D9' . '\nÚ %DA' . '\nÛ %DB' . '\nÜ %DC' . '\nÝ %DD' . '\nÞ %DE' . '\nß %DF' . '\nà %E0' . '\ná %E1' . '\nâ %E2' . '\nã %E3' . '\nä %E4' . '\nå %E5' . '\næ %E6' . '\nç %E7' . '\nè %E8' . '\né %E9' . '\nê %EA' . '\në %EB' . '\nì %EC' . '\ní %ED' . '\nî %EE' . '\nï %EF' . '\nð %F0' . '\nñ %F1' . '\nò %F2' . '\nó %F3' . '\nô %F4' . '\nõ %F5' . '\nö %F6' . '\n÷ %F7' . '\nø %F8' . '\nù %F9' . '\nú %FA' . '\nû %FB' . '\nü %FC' . '\ný %FD' . '\nþ %FE' . '\nÿ %FF'; $string = ''; foreach(str_split(iconv("UTF-8", "Windows-1252", $all)) as $n => $c) { if (ord($c) > 127) { $c = '%'.strtoupper(bin2hex($c)); } $string .= $c; } echo $string;
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.7
Warning: iconv(): Wrong encoding, conversion from "UTF-8" to "Windows-1252" is not allowed in /in/IpBME on line 184
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/IpBME:184 Stack trace: #0 {main} thrown in /in/IpBME on line 184
Process exited with code 255.
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 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
\nbackspace %08\ntab %09\nlinefeed %0A\ncreturn %0D\nspace %20\n! %21\n" %22\n# %23\n$ %24\n% %25\n& %26' %27\n( %28\n) %29\n* %2A\n+ %2B\n, %2C\n- %2D\n. %2E\n/ %2F\n0 %30\n1 %31\n2 %32\n3 %33\n4 %34\n5 %35\n6 %36\n7 %37\n8 %38\n9 %39\n: %3A\n; %3B\n< %3C\n= %3D\n> %3E\n? %3F\n@ %40\nA %41\nB %42\nC %43\nD %44\nE %45\nF %46\nG %47\nH %48\nI %49\nJ %4A\nK %4B\nL %4C\nM %4D\nN %4E\nO %4F\nP %50\nQ %51\nR %52\nS %53\nT %54\nU %55\nV %56\nW %57\nX %58\nY %59\nZ %5A\n[ %5B\n\ %5C\n] %5D\n^ %5E\n_ %5F\n` %60\na %61\nb %62\nc %63\nd %64\ne %65\nf %66\ng %67\nh %68\ni %69\nj %6A\nk %6B\nl %6C\nm %6D\nn %6E\no %6F\np %70\nq %71\nr %72\ns %73\nt %74\nu %75\nv %76\nw %77\nx %78\ny %79\nz %7A\n{ %7B\n| %7C\n} %7D\n~ %7E\n%A2 %A2\n%A3 %A3\n%A5 %A5\n| %A6\n%A7 %A7\n%AB %AB\n%AC %AC\n%AF %AD\n%BA %B0\n%B1 %B1\n%AA %B2\n, %B4\n%B5 %B5\n%BB %BB\n%BC %BC\n%BD %BD\n%BF %BF\n%C0 %C0\n%C1 %C1\n%C2 %C2\n%C3 %C3\n%C4 %C4\n%C5 %C5\n%C6 %C6\n%C7 %C7\n%C8 %C8\n%C9 %C9\n%CA %CA\n%CB %CB\n%CC %CC\n%CD %CD\n%CE %CE\n%CF %CF\n%D0 %D0\n%D1 %D1\n%D2 %D2\n%D3 %D3\n%D4 %D4\n%D5 %D5\n%D6 %D6\n%D8 %D8\n%D9 %D9\n%DA %DA\n%DB %DB\n%DC %DC\n%DD %DD\n%DE %DE\n%DF %DF\n%E0 %E0\n%E1 %E1\n%E2 %E2\n%E3 %E3\n%E4 %E4\n%E5 %E5\n%E6 %E6\n%E7 %E7\n%E8 %E8\n%E9 %E9\n%EA %EA\n%EB %EB\n%EC %EC\n%ED %ED\n%EE %EE\n%EF %EF\n%F0 %F0\n%F1 %F1\n%F2 %F2\n%F3 %F3\n%F4 %F4\n%F5 %F5\n%F6 %F6\n%F7 %F7\n%F8 %F8\n%F9 %F9\n%FA %FA\n%FB %FB\n%FC %FC\n%FD %FD\n%FE %FE\n%FF %FF
Output for 7.4.26 - 7.4.32
Notice: iconv(): Wrong charset, conversion from `UTF-8' to `Windows-1252' is not allowed in /in/IpBME on line 184
Output for 5.4.0 - 5.4.45
Fatal error: Call to undefined function iconv() in /in/IpBME on line 184
Process exited with code 255.

preferences:
249.95 ms | 401 KiB | 382 Q