3v4l.org

run code in 500+ PHP versions simultaneously
<?php $bad = ['fook', 'shoot']; $pattern = '/(?:\b(?=(?:' . implode('|', $bad) . ')\b)\w\K|\G(?!^))\w/i'; echo preg_replace($pattern, '*', 'Holy fook n shoot, Batman; The Joker\'s shooting The Riddler!');
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/TmB3g
function name:  (null)
number of ops:  9
compiled vars:  !0 = $bad, !1 = $pattern
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, <array>
    4     1        FRAMELESS_ICALL_2                implode             ~3      '%7C', !0
          2        CONCAT                                               ~4      '%2F%28%3F%3A%5Cb%28%3F%3D%28%3F%3A', ~3
          3        CONCAT                                               ~5      ~4, '%29%5Cb%29%5Cw%5CK%7C%5CG%28%3F%21%5E%29%29%5Cw%2Fi'
          4        ASSIGN                                                       !1, ~5
    6     5        FRAMELESS_ICALL_3                preg_replace        ~7      !1, '%2A'
          6        OP_DATA                                                      'Holy+fook+n+shoot%2C+Batman%3B+The+Joker%27s+shooting+The+Riddler%21'
          7        ECHO                                                         ~7
          8      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
193.6 ms | 1768 KiB | 13 Q