farrewa906
@farrewa906

PHP как сделать подстановку переменных в подготовленную строку?

Вот в кратко суть:
Есть масскив:
$text = array(
	'hello' => 'Привет, {%s} {$s}! ', 
	'error' => 'Ошибка в {%s}, код ошибки {%s}, {%s} не возможно',
);

Есть соответственно переменные:
$user_name = "Вася";
$user_surname = "Иванов";
$message = "";

Нужно:
В переменную $message занести значение $text['hello'], но подменить %s на переменные $user_name и $user_surname соответственно.
Сложность в том, что функция должна быть одна, а переменных (%s) в строке может быть несколько.

Когда-то давно видел в каком-то языке что-то вроде
строка1 = "Привет, {%s} {$s}!"
новая строка1 = функция(строка1, переменная1, переменная2)
строка2 = "Ошибка в {%s}, код ошибки {%s}, {%s} не возможно"
новая строка2 = функция(строка2, переменная3, переменная4, переменная5)


Кажется что-то похожее есть в и LUA и C# и в delphi, да и в PHP тоже должно быть.

Короче подскажите можно что-то подобное завернуть на PHP

P.S. делаю что-то вроде языкового файла
  • Вопрос задан
  • 1580 просмотров
Решения вопроса 2
@lnked
Ответ написан
Комментировать
Arekus
@Arekus
vsprintf($text['home'], [$user_name, $user_surname]);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы