【问题标题】:php multidimensional array as name value pairphp多维数组作为名称值对
【发布时间】:2012-04-06 11:20:42
【问题描述】:

对于电子商务,预期的名称值对我有以下批准的代码:

函数 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); 

}

我想从购物车中动态获取关联 $purchase 数组中的 $items 数组。

有没有办法生成与上面完全相同的输出?

我的肮脏解决方案,将 $purchase 数组写为字符串,将生成的 $items 数组包含在文件中并包含它 稍后在被调用的脚本中。

帮助表示赞赏。

【问题讨论】:

    标签: arrays multidimensional-array paypal-nvp


    【解决方案1】:
    $itemsArray = function_that_returns_your_2d_item_array();
    
    $purchase['items'] = $itemsArray;
    

    或者如果function_that_returns_your_2d_item_array() 返回一个由“items”索引的二维数组,你可以这样做:

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

    【讨论】:

    • 谢谢 creminsn,输出虽然不同。当我将内部数组重命名为 $purchase['items'] 时,输出将更加相似。问题输出必须相同才能被接受。
    猜你喜欢
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多