我有一个包含单个通配符的几个实例的字符串:
$ X a $ X让$ X远离。
和包含替换术语的数组:
["apple","day","doctor"]
我想用第一个数组值替换第一个通配符,用第二个数组值替换第二个通配符,给出:
每天一个苹果让医生远离我。
对不起,如果有人在其他地方询问过,但我找不到任何带有单搜索和多个替换的示例,只有多个搜索多个替换,但通配符没有编号,所以这不合适。
感谢。
答案 0 :(得分:3)
(s)printf应该做你要求的。
答案 1 :(得分:1)
我可以想到sprintf()
和list()
的两个选项:
$sentence = "An %s a %s keeps the %s away.";
$array = ["apple","day","doctor"];
echo sprintf($sentence , $array[0], $array[1], $array[2]);
// or not a single wildcard.
$array = ["apple","day","doctor"];
list($apple, $day, $doctor) = $array ;
echo "An $apple a $day keeps the $doctor away.";