3v4l.org

run code in 300+ PHP versions simultaneously
<?php $input = "[link=xxx]xxx[/link] [link=yyy][/link]"; echo preg_replace_callback('/\[link=(.*?)\](.*?)\[\/link\]/', function ($m) { return "<a href=\"$m[1]\">" . (strlen($m[2]) ? $m[2] : $m[1]) . '</a>'; }, $input);

preferences:
34.24 ms | 404 KiB | 5 Q