3v4l.org

run code in 300+ PHP versions simultaneously
<?php $s = 'promiň'; $s = mb_strtolower($s, 'utf8'); $ln = mb_strlen($s, 'utf8'); $i = 0; do { $b = decbin($i); $p = strrev(str_pad((string) $b, $ln, '0', STR_PAD_LEFT)); $r = ''; for ($j = 0; $j < strlen($p); $j++) { $ch = mb_substr($s, $j, 1, 'utf8'); $r .= $p[$j] ? mb_strtoupper($ch, 'utf8') : $ch; } echo $r . ' '; if ($p === str_repeat('1', $ln)) { break; } $i++; } while (true);
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.8 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.5 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
promiň Promiň pRomiň PRomiň prOmiň PrOmiň pROmiň PROmiň proMiň ProMiň pRoMiň PRoMiň prOMiň PrOMiň pROMiň PROMiň promIň PromIň pRomIň PRomIň prOmIň PrOmIň pROmIň PROmIň proMIň ProMIň pRoMIň PRoMIň prOMIň PrOMIň pROMIň PROMIň promiŇ PromiŇ pRomiŇ PRomiŇ prOmiŇ PrOmiŇ pROmiŇ PROmiŇ proMiŇ ProMiŇ pRoMiŇ PRoMiŇ prOMiŇ PrOMiŇ pROMiŇ PROMiŇ promIŇ PromIŇ pRomIŇ PRomIŇ prOmIŇ PrOmIŇ pROmIŇ PROmIŇ proMIŇ ProMIŇ pRoMIŇ PRoMIŇ prOMIŇ PrOMIŇ pROMIŇ PROMIŇ

preferences:
253.28 ms | 406 KiB | 307 Q