2012-02-21 60 views
3

好吧,我知道它可以像这样做...用于在数组中匹配匹配索引字符串的PHP函数?

$Array1 = array("Hello, ", "foo", "The quick brown fox jumped "); 
$Array2 = array("World!", "bar", "the lazy dog."); 
$Array3 = array(); 
for($x = 0; $x < count($Array1); $x++) { 
    $Array3[] = $Array1[$x] . $Array2[$x]; 
} 
// returns this -> ("Hello, World", "foobar", "The quick brown fox jumped over the lazy dog.") 

但有一个本地的PHP函数吗?就像这样:

$Array3 = array_concat_strings($Array1, $Array2) 

我通过php.net搜查,并没有发现什么,但我想证实我不是失去了一些东西。

回答

5

我不认为有这样一个特定的原生功能,但你可以自己制作:

$array3 = array_map(function ($a, $b) { return $a . $b; }, $array1, $array2); 
+0

哦。整洁。我可能不得不使用这个。 – Yoshiyahu 2012-02-21 05:25:11

+0

需要PHP 5.3+,BTW。 5.2-的语法需要'create_function('$ a,$ b','return $ a。$ b;')''。 – deceze 2012-02-21 05:33:24

0

有没有这样的原生功能,但你可以做到这一点没有第三阵列,例如

foreach($Array1 as $key=>$value) 
    $Array1[$key] .= $Array2[$key]; 

print_r($Array1); 
+0

在我使用过这个的一些情况下,我需要所有3个数组。 但是,是的,授予。 – Yoshiyahu 2012-02-21 05:22:20

+0

@Yoshiyahu所以,复制一个数组并修改它的方式:) – Cheery 2012-02-21 05:26:32