-1

この問題を解決してくれる人を探しています。だから私は配列に配列を追加したいが、この例のような名前で:

array( 
   'names' = > array( 'firstname' => 'jean' )
);

2回目は、次のような別のアイテムを追加したいと思います:

array( 
   'names' = > array( 'firstname' => 'jean'),
               array(  'age' = > '23')        

);

等々

array( 
   'names' = > array( 'firstname' => 'jean'),
               array(  'age' = > '23'),
               array(  'job' = > 'programmer')


);

前もって感謝します。

4

3 に答える 3

1
$a = array('names'=>array());
$a['names'][] = array( 'firstname' => 'jean');
$a['names'][] = array(  'age' = > '23');
$a['names'][] = array(  'job' = > 'programmer');

またはhttp://php.net/manual/en/function.array-push.phpを使用できますarray_push

$a = array('names'=>array());
array_push($a['names'], array( 'firstname' => 'jean'));
array_push($a['names'], array(  'age' = > '23');
...

@deceze コメントに関しては、正しい構造は次のようになります。

array(
    array('firstname' => '', 'age' => 100, 'job' => ''),
    array('firstname' => '', 'age' => 100, 'job' => ''),
    array('firstname' => '', 'age' => 100, 'job' => '')
)

そして、それをサブ配列として構造体に入れることができます。

于 2012-12-14T16:10:03.920 に答える
1
$arr['names'] = array();
$arr['names'][] = array('firstname' => 'jean');
$arr['names'][] = array('age' => '23');
$arr['names'][] = array('job' => 'programmer');
于 2012-12-14T16:10:53.460 に答える
0

申し訳ありませんが、ここでの流れに逆らおうとしています。私にとって、配列が次のようになっていると、本当に、本当に本当にもっと意味があります。

array('names' => array('jean' => array('age' => '23',
                                       'job' => 'programmer')));

これを実現するには、このタイプの配列を動的に構築する場合は、次のようにします。

$main = array('names' => array());
//get data from db or something
$main['names'][$data['firstname']] = array('age' => $data['age'],
                                           'job' => $data['job']);

はるかに理にかなっています。すべての名前を一覧表示するには:array_keys($main['names']);トリックを実行します。これにより、配列キーは、それが保持する実際のデータを示します。
特定の人に属するすべてのデータを取得するには:

$allNames = array_keys($main['names']);
echo $allNames[0].' is a '.$main['names'][$allNames[0]]['age'].' year old '.$main['names'][$allNames[0]]['job'].'<br/>';

この場合、出力は「Jeanは23歳のプログラマーです」になります。これもあなたの質問に対する直接の答えではないかもしれませんが、これは、何が何に属するのか、そして将来的に何が属するのかを理解するの
に問題が発生したときに役立つかもしれません。もちろん、オブジェクトはこれを回避する別の方法ですagejobname

于 2012-12-15T11:15:28.477 に答える