3v4l.org

run code in 300+ PHP versions simultaneously
<?php $patternsArray = array(); $matchesArray = array(); $text = " Cassie, slipped on some glass and cut her ass!<br> 'Goshdamnit! Who left this damn mess out?' she cried.<br> 'Well, SHOOT, you should be more careful!' Mary laughed.<br> 'Hello! Why don't you clean up after yourself!' Cassie screamed.<br> 'Go to HELL!' Mary yelled back.<br> Then suddenly, blood started shooting everywhere.XXX "; $patternsArray[] = '/\basss?\b/i'; $patternsArray[] = '/damn/i'; $patternsArray[] = '/\bshoots?\b/i'; $patternsArray[] = '/\bhells?\b/i'; $patternsArray[] = '/XXX/i'; $cleanText = preg_replace_callback($patternsArray, function($matches) use (&$matchesArray) { list($word) = $matches; $matchesArray[] = $word; return str_repeat("*", strlen($word)); }, $text); var_dump($cleanText); var_dump($matchesArray);
Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0 - 8.5.1
string(335) " Cassie, slipped on some glass and cut her ***!<br> 'Gosh****it! Who left this **** mess out?' she cried.<br> 'Well, *****, you should be more careful!' Mary laughed.<br> 'Hello! Why don't you clean up after yourself!' Cassie screamed.<br> 'Go to ****!' Mary yelled back.<br> Then suddenly, blood started shooting everywhere.*** " array(6) { [0]=> string(3) "ass" [1]=> string(4) "damn" [2]=> string(4) "damn" [3]=> string(5) "SHOOT" [4]=> string(4) "HELL" [5]=> string(3) "XXX" }
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.

preferences:
188.8 ms | 408 KiB | 5 Q