Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php str_replace的一个稍微不同的版本_Php_Arrays_String - Fatal编程技术网

Php str_replace的一个稍微不同的版本

Php str_replace的一个稍微不同的版本,php,arrays,string,Php,Arrays,String,我正在寻找一个函数,用数组中给定的值替换符号的特定组合 例如: $array = array('Tom','Smith'); $string = 'My first name is %% and my last name is %%'; var_dump(str_replace('%%', $array, $string)); 预期结果是 我的名字叫汤姆,姓史密斯 但我明白了 我的名字是Array,我的姓是Array 我想,如果我将数组“%”、“%”作为str_replace的第一个参数,我

我正在寻找一个函数,用数组中给定的值替换符号的特定组合

例如:

$array = array('Tom','Smith');
$string = 'My first name is %% and my last name is %%';

var_dump(str_replace('%%', $array, $string));
预期结果是

我的名字叫汤姆,姓史密斯

但我明白了

我的名字是Array,我的姓是Array


我想,如果我将数组“%”、“%”作为str_replace的第一个参数,我会得到正确的输出,但我可能并不总是知道数组中有多少元素,因此我正在寻找一个只需要替换序列一次并用每个后续数组元素替换每一次的函数。有这样的函数吗?

要做到这一点,只需使用该函数即可

var_dump(vsprintf('My first name is %s and my last name is %s', $array)

每个%s代表一个字符串。您应该阅读以了解为什么它是%s以及它可能是什么。要做到这一点,只需使用该函数

var_dump(vsprintf('My first name is %s and my last name is %s', $array)
每个%s代表一个字符串。您应该阅读以了解为什么它是%s以及它可能是什么