https://www.php.net/manual/ru/function.sprintf.php - всё тут.
% указатель форматирования строки указывает что дальше будет вставлена переменная формирования
по индекс переменой и аргументу данных: %1..3...4..5..$[s...]
по аргументу данных у учётом порядка установки переменных %[s..]
$i = 1;
$x = "да";
echo "Когда появляеться {$i} это значит {$x}" . "\n......................\n";
echo sprintf('Когда появляеться %2$s это значит %1$d', $i, $x) . "\n";
echo sprintf('Когда появляеться 2$s это значит 1$d', $i, $x) . "\n";
echo sprintf('Когда появляеться %s это значит %d', $x, $i) . "\n";