Как заменить переменную в строке с помощью PHP?

Поэтому у меня есть код PHP, который выглядит так:

$message = 'Here is the result: %s'; 

Я просто использовал% s в качестве примера. Это, в основном, место для того, что там будет. Затем передаю строку функции, и я хочу, чтобы эта функция заменила% s на значение.

Что мне нужно сделать для этого? Нужно ли делать какое-то регулярное выражение и использовать preg_replace () или что-то еще? или есть более простой способ сделать это?

Фактически вы можете использовать функцию sprintf, которая вернет форматированную строку и поместит ваши переменные на место заполнителей.
Это также дает вам отличные возможности по форматированию и отображению вашей строки.

 $output = sprintf("Here is the result: %s for this date %s", $result, $date); 

Если вы используете %s , я думаю, что это тот же самый заполнитель, который printf использует для строки. Таким образом, вы можете сделать:

 $text = sprintf($message, "replacement text"); 

Думайте, что нужно работать хотя бы …

 $find = array( '#name#', '#date#' ); $search = array( 'someone\'s name', date("mdY") ); $text_result = str_replace($find, $search, $text); 

Обычно я использую это для своего кода, получая $ text из некоторых текстовых / html-файлов, а затем создаю $ text_result в качестве вывода

Вы можете использовать sprintf , который работает очень похоже на printf и sprintf .

попробуйте динамические переменные:

 $placeholder = 's'; str_replace("%".$placeholder,$$placeholder,$message); 

то% s будет заменено на $ s, переменная