2012-02-21 18 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

+0

PHP 5.3以降が必要です。 5.2-の構文には 'create_function( '$ a、$ b'、 'return $ a。$ b;')が必要です。 – deceze

0

そこには、このようなネイティブ関数はありませんが、あなたは、たとえば、第三のアレイなしでそれを行うことができます

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

print_r($Array1); 
+0

私がこれを使ったいくつかの例では、3つの配列がすべて必要です。 しかし、ええ、許されます。 – Yoshiyahu

+0

@ Yoshiyahuので、配列の1つをコピーし、それを変更する:) – Cheery

1

申し訳ありませんが、そのような機能

関連する問題