如何在 PHP 中使用 array_combine 和 str_replace

How to use array_combine along with str_replace in PHP

我正在 php 中进行一些数组合并。但是当 combining/mapping 一个数组的键到另一个数组的值时,我想在将要组合的数组的值中做一些字符串替换。如何在 php 中使用 str_replacearray_combine大部分没有forloop.

例如:

$a1 = array("35","37","43");
$a2 = array("Testing's", "testing's", "tessting's");

正常组合如下所示,(即)在组合时删除那些字符串中的 '

$a3 = array_combine($a1, $a2);

我想要的输出如下,

array(
    35 => "Testing",
    37 => "testing",
    43 => "tessting"
)

然后在组合它们之后,您可以在结果数组上使用 array_map

$a3 = array_map(function($e){
    return str_replace("'s", '', $e);
}, array_combine($a1, $a2)); // anonymous function PHP 5.4 or greater

你可以做到:

function cust_replace($n)
    {
        return  str_replace("'s","",$n);
    }
    $a1 = array("35","37","43");
    $a2 = array("Testing's", "testing's", "tessting's");
    $a3 = array_map("cust_replace",array_combine($a1, $a2));
    print_r($a3);

如果你想让它更通用,你可以向 cust_replace 添加另一个参数 - 你想要替换的 "needle"。