I have this code:
<div>{phrase var="web_user" {0}="Try } Symbole" {1}="\"No\""}</div><div>{phrase var="web_admin" {0}="another" {1}="Is not any1."}</div>
I want replace {phrase}
with result of function translate
. The call of translate
function need to be with {\d}
parameters. For example the code:
echo '<div>{phrase var="web_user" {0}="Try } Symbole" {1}="\"No\""}</div>';
should be:
echo '<div>'.translate("web_user", [0 => "Try } Symbole", 1=>"\"No\""]).'</div>';
I tryed to use preg_replace_callback
without success.
My code:
$code = preg_replace_callback(
'/\{phrase\s+(.*)\}/iU',
function($phrase_data) {
preg_match_all('/([a-zA-Z0-9\_]+)\\s*=\s*"([^\"])"/iU',$phrase_data[0], $parameters);
call_user_func_array('translate', $parameters);
},
$code
);
Thank you.