Thursday, April 21, 2011

Array with in an array

I have an array like:

Array ( [id] => 1 [code] => FAC876 )

How do I push it into another array using PHP, such that the result is like:

Array ( [0] => Array ( [id] => 1 [code] => FAC876 ) 
        [1] => Array ( [id] => 2 [code] => GEO980 )
      )
From stackoverflow
  • $arr1 = array(
      'id' => 1,
      'code' => 'FAC876',
    );
    $arr2 = array(
      $arr1,
      array(
        'id' => 2,
        'code' => 'GEO980',
      ),
    );
    

    or

    $arr1 = array(
      'id' => 1,
      'code' => 'FAC876',
    );
    $arr2 = array(
      'id' => 2,
      'code' => 'GEO980',
    );
    $arr3 = array($arr1, $arr2);
    

    or lots of other ways to achieve that.

  • Simply threat the array as any other variable.

    So if this is what you got:

    $array  = array();
    $array1 = array( "id"=>1, "code"=>"FAC876" );
    $array2 = array( "id"=>2, "code"=>"GEO980" );
    

    You could do either

    $array[] = $array1;
    $array[] = $array2;
    

    or

    $array[0] = $array1;
    $array[1] = $array2;
    

    or

    $array = array($array1, $array2);
    

    or

    array_push($array, $array1);
    array_push($array, $array2);
    

    Any of those four possibilites will give you what you want.

  • $arrays = array();
    
    $array1 = array("id" => 1, "code" => "ABC");
    $array2 = array("id" => 2, "code" => "DEF");
    
    array_push($arrays, $array1, $array2);
    
  • $ar=array();
    $ar[]=array("no"=>10,"name"=>"abc"); 
    $ar[]=array("no"=>20,"name"=>"pqr");
    
  • You almost posted the answer yourself:

    Array (
        0 => Array ( 'id' => 1, 'code' => 'FAC876' ),
        1 => Array ( 'id' => 2, 'code' => 'GEO980' )
    )
    

0 comments:

Post a Comment

Note: Only a member of this blog may post a comment.