3v4l.org

run code in 300+ PHP versions simultaneously
<?php function encode($str) { return preg_replace_callback('/(.)\1*/', function($match) { return strlen($match[1]) . $match[1]; }, $str); } function decode($str) { return preg_replace_callback('/(\d+)(\D)/', function($match) { return str_repeat($match[2], $match[1]); }, $str); } echo encode('WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW'), "\n"; echo decode('12W1B12W3B24W1B14W'), "\n";

preferences:
49.7 ms | 402 KiB | 5 Q