2012-04-06 13 views
0

für E-Commerce, die Name-Wert-Paar erwartet ich folgendes genehmigt Code haben:PHP mehrdimensionales Array als Name-Wert-Paar

Funktion create_example_purchase() {

set_credentials(); 
$purchase = array(
    'name'  => 'Digital Good Purchase Example', 
    'description' => 'Example Digital Good Purchase', 
    'amount'  => '12.00', // sum of all item_amount 
    'items'  => array(
     array(// First item 
      'item_name'  => 'First item name', 
      'item_description' => 'a description of the 1st item', 
      'item_amount'  => '6.00', 
      'item_tax'   => '0.00', 
      'item_quantity' => 1, 
      'item_number'  => 'XF100', 
     ), 
     array(// Second item 
      'item_name'  => 'Second Item', 
      'item_description' => 'a description of the 2nd item', 
      'item_amount'  => '3.00', 
      'item_tax'   => '0.00', 
      'item_quantity' => 2, 
      'item_number'  => 'XJ100', 
     ), 
    ) 
); 

return new Purchase($purchase); 

}

Ich mag würde zu get $ items Array innerhalb eines assoziativen $ arrays dynamisch vom Versandwagen beziehen.

Gibt es eine Möglichkeit, genau die gleiche Ausgabe oben zu generieren?

Meine schmutzige Lösung, $ array als String inklusive dem generierten $ items-Array in eine Datei zu schreiben und es später in das aufgerufene Skript einzuschließen.

Hilfe geschätzt.

Antwort

0
$itemsArray = function_that_returns_your_2d_item_array(); 

$purchase['items'] = $itemsArray; 

oder wenn die function_that_returns_your_2d_item_array() ein 2D-Array von 'Elemente' indiziert kehrt könnten Sie tun:

$purchase = array_merge($purchase, $itemsArray); 
+0

Danke creminsn, ist der Ausgang allerdings anders. Wenn ich Array nach innen in $ purchase ['items'] umbenenne, wird die Ausgabe noch ähnlicher sein. Die Problemausgabe muss identisch sein, um akzeptiert zu werden. –

Verwandte Themen