如何在 PHP 中使用 array_combine 和 str_replace
How to use array_combine along with str_replace in PHP
我正在 php 中进行一些数组合并。但是当 combining/mapping 一个数组的键到另一个数组的值时,我想在将要组合的数组的值中做一些字符串替换。如何在 php 中使用 str_replace
和 array_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"。
我正在 php 中进行一些数组合并。但是当 combining/mapping 一个数组的键到另一个数组的值时,我想在将要组合的数组的值中做一些字符串替换。如何在 php 中使用 str_replace
和 array_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"。