3v4l.org

run code in 500+ PHP versions simultaneously
<?php $pattern = '~ \A (?=\p{Latin}) (*asr: [\pL\pM ]+) \z ~xu'; $tests = [ 'Das Wohltemperierte Klavier', 'Добре темперирано пиано', 'Le Clavier bien tempére'."\xcc\x81", // <-- combining acute 'Il clavicembalo ben temperato', '平均律クラヴィーア曲集', 'El clavecí ben temprat', 'เดอะเวลล์-เทมเพิร์ดคลาเวียร์', 'Eliška Koňaříková', 'Eliška Koňaříková 1 2 3', ]; print_r(preg_grep($pattern, $tests));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/fQIbt
function name:  (null)
number of ops:  10
compiled vars:  !0 = $pattern, !1 = $tests
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, '%7E%0A++%5CA%0A++++%28%3F%3D%5Cp%7BLatin%7D%29+%0A++++%28%2Aasr%3A+%5B%5CpL%5CpM+%5D%2B%29%0A++%5Cz%0A%7Exu'
   10     1        ASSIGN                                                       !1, <array>
   22     2        INIT_FCALL                                                   'print_r'
          3        INIT_FCALL                                                   'preg_grep'
          4        SEND_VAR                                                     !0
          5        SEND_VAR                                                     !1
          6        DO_ICALL                                             $4      
          7        SEND_VAR                                                     $4
          8        DO_ICALL                                                     
          9      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
156.73 ms | 1606 KiB | 15 Q