dqwh26750 2015-09-02 06:35
浏览 107
已采纳

如何遍历数组并将每个元素作为参数传递给php中的构造函数

I want to loop through an array and get each element to pass as parameters to a constructor. here is my example

[user_by_province] => Array
    (
        [label] => Array
            (
                [0] => a
                [1] => b
                [2] => c
                [3] => d
                [4] => e
                [5] => f
            )

        [count] => Array
            (
                [0] => 2
                [1] => 1
                [2] => 1
                [3] => 1
                [4] => 7
                [5] => 1
            )

    )

Here is the constructor:

$pc = new C_PhpChartX(array(array('a','2'),
                            array('b','1'),
                            array('c','1'),
                            array('d','1'),
                            array('e','7'),
                            array('f','1')));

so how can i do that with php thanks for any help, may we can do that with array_map or no? thanks for any help

  • 写回答

4条回答 默认 最新

  • doutang3077 2015-09-02 07:14
    关注

    As you suggested array_map with multiple arguments could be a good solution.

    <?php
    
    $userByProvince = array(
        'label' => array('a', 'b', 'c', 'd', 'e', 'f'),
        'count' => array('1', '2', '3', '4', '5', '6'),
    );
    
    function combine($arg1, $arg2)
    {
        return array($arg1, $arg2);
    }
    
    $arguments = array_map('combine', $userByProvince['label'], $userByProvince['count']);
    
    $pc = new C_PhpChartX($arguments);
    

    If you are using PHP 5.3 you can even substitute the function with a lambda expression to make the code more compact (see docs).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 poi合并多个word成一个新word,原word中横版没了.
  • ¥15 【火车头采集器】搜狐娱乐这种列表页网址,怎么采集?
  • ¥15 求MCSCANX 帮助
  • ¥15 机器学习训练相关模型
  • ¥15 Todesk 远程写代码 anaconda jupyter python3
  • ¥15 我的R语言提示去除连锁不平衡时clump_data报错,图片以下所示,卡了好几天了,苦恼不知道如何解决,有人帮我看看怎么解决吗?
  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?