2

私はPHPにかなり慣れていないので、自分のやり方で取り組んでいます。私はほとんどの問題を独立して解決することができましたが、これはしばらくの間私を悩ませました. どんな助けでも大歓迎です!

次のように、フォームによって生成された一連の配列があります。

description_array = description1, description2, description3
account_array = account1, account2, account 3

私が到達しようとしている場所は次のとおりです。

item_array = 1 => description1, account1, 2 => description2, account2

実際のコードよりもロジックに苦労しているのかもしれません。私はあらゆる種類の操作を withforeachおよび while ループで試しましたが、ほとんど成功しませんでした。

どんな考えもありがたく受け取った。

ありがとうアーロン

4

4 に答える 4

3

配列のサイズのバランスが取れていることが保証されている場合は、これを行うことができます。

$res = array();
for($x=0; $x<count($description_array); $x++){
       $res[] = array($description_array[$x], $account_array[$x]);
}
于 2013-06-13T20:47:13.923 に答える
1

keyfrom 1 配列を使用してvalue、別の配列の を取得できます。

$description_array = array('description1', 'description2', 'description3');
$account_array = array('account1', 'account2', 'account3');

$item_array = array();
foreach($description_array as $key=>$val){
    $item_array[] = array($val,$account_array[$key]);
}

echo '<pre>',print_r($item_array),'</pre>';
于 2013-06-13T20:47:07.917 に答える
0

両方が同じ大きさの場合、配列の 1 つを反復処理して新しい配列に入力するのがおそらく最も簡単です。

$item_array = array();
foreach ($description_array as $key => $description) {
    $item_array[$key] = array(
        'description' => $description,
        'account' => $account_array[$key]
    );
}

さらに配列を追加すれば、これも簡単に拡張できます。

于 2013-06-13T20:48:12.457 に答える
0

ダープ。完全に読み違えました。そして、それを修正するのにかかった時間で、他の人が答えましたが、まあ. ここにあります :)

$items = array();
foreach($description AS $k=>$v){
    if(isset($account[$k])){ 
        $items[$k] = array($v, $account[$k]); // assuming you don't really want a comma sep string, but another array.
    }
}
于 2013-06-13T20:45:50.950 に答える