Я заменяю динамические строки таким образом, и это работает.
<?php
$data = 'wow@example.org|Foo|2019|....|x_Param';
$parts = explode("|", $data);
$text = 'Hello [-param_1-] Your email is [-param_0-]';
$new_text = str_replace('[-param_0-]', $parts[0], $text);
$new_text = str_replace('[-param_1-]', $parts[1], $new_text);
$new_text = str_replace('[-param_2-]', $parts[2], $new_text);
# .... param_X
echo $new_text;
# Out: Hello Foo Your email is wow@example.org
?>
Как его улучшить, то, как я это делаю, неэффективно, и, если есть 9999.X, как его заменить ..
Я ценю вашу помощь
Edi - Решение:
<?php
$data = 'wow@example.org|Foo|2019|....|x_Param';
$parts = explode("|", $data);
$text = 'Hello [-param_1-] Your email is [-param_0-]';
//$text = 'Hello [-param_1-] Your email is [-param_0-]';
$new_text = $text;
foreach($parts as $i => $part){
$new_text = str_replace('[-param_'.$i.'-]', $part, $new_text);
}
echo $new_text;
?>