- preg_replace_callback: documentation ( source)
- strtr: documentation ( source)
<?php
preg_replace_callback(
'~\[admin(.+?)\[/admin\]~is',
function($m) {
return '[admin' . strtr(($m[1]), array("\n" => ' ', ' ' => '  ')) . '[/admin]';
},
'[admin]test[/admin]'
);