PHP str_replace数组

时间:2015-10-07 07:02:31

标签: php arrays

我有一个关于将数组返回到spesified字符串的问题。所以,这是我试过的代码。

$setValues = array("test1", "test2", "testurl");
$change = join("','", $setValues);    
$done = str_replace("", "?", $change);

所以,$ change变量将返回一个如下所示的数组:

'test1', 'test2', 'testurl'

我想将该数组更改为以下内容:

?, ?, ?

可以这样做吗?

3 个答案:

答案 0 :(得分:7)

将array_map()与回调

一起使用
    $setValues = array("test1", "test2", "testurl");
    $change = array_map(function($val) { return "?"; }, $setValues);
    $change = join(",", $change); 
    echo $change;// outputs => ?,?,?

答案 1 :(得分:0)

这对你有用 -

function myfunction($num)
{
   return '?';
}

$setValues = array("test1", "test2", "testurl");
$setValues = array_map("myfunction",$setValues);
$change = join("','", $setValues);    
$done = str_replace("", "?", $change);

答案 2 :(得分:0)

使用array_map进行迭代似乎太过分了。鉴于n,您基本上是在尝试生成n = count($array)个问号。那么为什么不呢:

$questionmarks = join( "," , array_fill( 0, count( $array ), "?" ) );