Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将多维PHP数组操作为一个漂亮的多维数组_Php_Arrays - Fatal编程技术网

将多维PHP数组操作为一个漂亮的多维数组

将多维PHP数组操作为一个漂亮的多维数组,php,arrays,Php,Arrays,我知道这被认为是一个有点基本的PHP数组问题,但我在35小时不睡觉的情况下运行,我真的需要尽快完成这项工作,这样我就可以睡觉了…抱歉,说实话 在PHP中,我有一个变量$design\u value 如果Iprint\u r($design\u value)此数组将显示以下内容。它正在“设计”数据库记录 在这种情况下,有两个设计记录组成前两个数组键,分别为0和1 在应用程序中,可以有从0到任意数量的任意数量的设计 现在,在2个设计记录下,为2个设计阵列中的每个阵列添加了24个阵列键 这些24数组键

我知道这被认为是一个有点基本的PHP数组问题,但我在35小时不睡觉的情况下运行,我真的需要尽快完成这项工作,这样我就可以睡觉了…抱歉,说实话

在PHP中,我有一个变量
$design\u value

如果I
print\u r($design\u value)此数组将显示以下内容。它正在“设计”数据库记录

在这种情况下,有两个设计记录组成前两个数组键,分别为
0
1

在应用程序中,可以有从0到任意数量的任意数量的设计

现在,在2个设计记录下,为2个设计阵列中的每个阵列添加了24个阵列键

这些
24
数组键被编号为
0
23

现在,在24个数组键中的每一个下都有2个键。一个名为
name
,另一个名为
value

我需要获取数组
$design\u values
并创建该数组的新数组。新阵列的格式应该更好,并且易于使用

因此
名称
键应组成
=>
。新阵列应该更像这样

当前数组完全是一场噩梦的原因是,这是我从现有库中获取的格式,该库通过API调用返回此数据

如果有人能帮我把这个数组处理成想要的数组,我将不胜感激!我已经胡闹了两个小时,一点运气都没有

所需的新数组格式:

Array
(
    [0] => Array
        (
            ['assigned_user_name'] => 'Jason Administrator',
            ['modified_by_name'] => 'Jason Administrator',
            ['created_by_name'] => 'Jason Administrator',
            ['id'] => '4c5c3c08-2b14-9f9c-6cee-542c56cac7b1',
            ['date_entered'] => '2014-10-01 19:29:32',
            ....continued for all 24 record items
        ),
    [1] => Array
        (
            ['assigned_user_name'] => 'Jason Administrator',
            ['modified_by_name'] => 'Jason Administrator',
            ['created_by_name'] => 'Jason Administrator',
            ['id'] => '4c5c3c08-2b14-9f9c-6cee-542c56cac7b1',
            ['date_entered'] => '2014-10-01 19:29:32',
            ....continued for all 24 record items
        )
)
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [name] => assigned_user_name
                    [value] => Jason Administrator
                )

            [1] => Array
                (
                    [name] => modified_by_name
                    [value] => Jason Administrator
                )

            [2] => Array
                (
                    [name] => created_by_name
                    [value] => Jason Administrator
                )

            [3] => Array
                (
                    [name] => id
                    [value] => 4c5c3c08-2b14-9f9c-6cee-542c56cac7b1
                )

            [4] => Array
                (
                    [name] => name
                    [value] => test
                )

            [5] => Array
                (
                    [name] => date_entered
                    [value] => 2014-10-01 19:29:32
                )

            [6] => Array
                (
                    [name] => date_modified
                    [value] => 2014-10-01 19:29:32
                )

            [7] => Array
                (
                    [name] => modified_user_id
                    [value] => 1
                )

            [8] => Array
                (
                    [name] => created_by
                    [value] => 1
                )

            [9] => Array
                (
                    [name] => description
                    [value] => 
                )

            [10] => Array
                (
                    [name] => deleted
                    [value] => 0
                )

            [11] => Array
                (
                    [name] => assigned_user_id
                    [value] => 1
                )

            [12] => Array
                (
                    [name] => chann_channelqms_id_c
                    [value] => 
                )

            [13] => Array
                (
                    [name] => channelqms
                    [value] => 
                )

            [14] => Array
                (
                    [name] => design_name
                    [value] => 
                )

            [15] => Array
                (
                    [name] => design_number
                    [value] => 
                )

            [16] => Array
                (
                    [name] => overall_height
                    [value] => 
                )

            [17] => Array
                (
                    [name] => overall_width
                    [value] => 
                )

            [18] => Array
                (
                    [name] => show_to_customer
                    [value] => 1
                )

            [19] => Array
                (
                    [name] => uploadfile
                    [value] => 2014-09-29_21-57-50.png
                )

            [20] => Array
                (
                    [name] => nam_channelletterqms_nam_channelletterqms_designs_name
                    [value] => Test
                )

            [21] => Array
                (
                    [name] => price_c
                    [value] => 
                )

            [22] => Array
                (
                    [name] => shipping_c
                    [value] => 
                )

            [23] => Array
                (
                    [name] => totalprice_c
                    [value] => 
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [name] => assigned_user_name
                    [value] => Jason Administrator
                )

            [1] => Array
                (
                    [name] => modified_by_name
                    [value] => Jason Administrator
                )

            [2] => Array
                (
                    [name] => created_by_name
                    [value] => Jason Administrator
                )

            [3] => Array
                (
                    [name] => id
                    [value] => 86f21f44-4b21-1826-3592-542c59e4be66
                )

            [4] => Array
                (
                    [name] => name
                    [value] => fdtgrfdhg
                )

            [5] => Array
                (
                    [name] => date_entered
                    [value] => 2014-10-01 19:41:54
                )

            [6] => Array
                (
                    [name] => date_modified
                    [value] => 2014-10-19 19:30:45
                )

            [7] => Array
                (
                    [name] => modified_user_id
                    [value] => 1
                )

            [8] => Array
                (
                    [name] => created_by
                    [value] => 1
                )

            [9] => Array
                (
                    [name] => description
                    [value] => 
                )

            [10] => Array
                (
                    [name] => deleted
                    [value] => 0
                )

            [11] => Array
                (
                    [name] => assigned_user_id
                    [value] => 1
                )

            [12] => Array
                (
                    [name] => chann_channelqms_id_c
                    [value] => 
                )

            [13] => Array
                (
                    [name] => channelqms
                    [value] => 
                )

            [14] => Array
                (
                    [name] => design_name
                    [value] => design name
                )

            [15] => Array
                (
                    [name] => design_number
                    [value] => 313
                )

            [16] => Array
                (
                    [name] => overall_height
                    [value] => 22
                )

            [17] => Array
                (
                    [name] => overall_width
                    [value] => 22
                )

            [18] => Array
                (
                    [name] => show_to_customer
                    [value] => 1
                )

            [19] => Array
                (
                    [name] => uploadfile
                    [value] => 2014-09-29_21-57-50.png
                )

            [20] => Array
                (
                    [name] => nam_channelletterqms_nam_channelletterqms_designs_name
                    [value] => Test
                )

            [21] => Array
                (
                    [name] => price_c
                    [value] => 
                )

            [22] => Array
                (
                    [name] => shipping_c
                    [value] => 
                )

            [23] => Array
                (
                    [name] => totalprice_c
                    [value] => 
                )

        )

)
当前数组格式:

Array
(
    [0] => Array
        (
            ['assigned_user_name'] => 'Jason Administrator',
            ['modified_by_name'] => 'Jason Administrator',
            ['created_by_name'] => 'Jason Administrator',
            ['id'] => '4c5c3c08-2b14-9f9c-6cee-542c56cac7b1',
            ['date_entered'] => '2014-10-01 19:29:32',
            ....continued for all 24 record items
        ),
    [1] => Array
        (
            ['assigned_user_name'] => 'Jason Administrator',
            ['modified_by_name'] => 'Jason Administrator',
            ['created_by_name'] => 'Jason Administrator',
            ['id'] => '4c5c3c08-2b14-9f9c-6cee-542c56cac7b1',
            ['date_entered'] => '2014-10-01 19:29:32',
            ....continued for all 24 record items
        )
)
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [name] => assigned_user_name
                    [value] => Jason Administrator
                )

            [1] => Array
                (
                    [name] => modified_by_name
                    [value] => Jason Administrator
                )

            [2] => Array
                (
                    [name] => created_by_name
                    [value] => Jason Administrator
                )

            [3] => Array
                (
                    [name] => id
                    [value] => 4c5c3c08-2b14-9f9c-6cee-542c56cac7b1
                )

            [4] => Array
                (
                    [name] => name
                    [value] => test
                )

            [5] => Array
                (
                    [name] => date_entered
                    [value] => 2014-10-01 19:29:32
                )

            [6] => Array
                (
                    [name] => date_modified
                    [value] => 2014-10-01 19:29:32
                )

            [7] => Array
                (
                    [name] => modified_user_id
                    [value] => 1
                )

            [8] => Array
                (
                    [name] => created_by
                    [value] => 1
                )

            [9] => Array
                (
                    [name] => description
                    [value] => 
                )

            [10] => Array
                (
                    [name] => deleted
                    [value] => 0
                )

            [11] => Array
                (
                    [name] => assigned_user_id
                    [value] => 1
                )

            [12] => Array
                (
                    [name] => chann_channelqms_id_c
                    [value] => 
                )

            [13] => Array
                (
                    [name] => channelqms
                    [value] => 
                )

            [14] => Array
                (
                    [name] => design_name
                    [value] => 
                )

            [15] => Array
                (
                    [name] => design_number
                    [value] => 
                )

            [16] => Array
                (
                    [name] => overall_height
                    [value] => 
                )

            [17] => Array
                (
                    [name] => overall_width
                    [value] => 
                )

            [18] => Array
                (
                    [name] => show_to_customer
                    [value] => 1
                )

            [19] => Array
                (
                    [name] => uploadfile
                    [value] => 2014-09-29_21-57-50.png
                )

            [20] => Array
                (
                    [name] => nam_channelletterqms_nam_channelletterqms_designs_name
                    [value] => Test
                )

            [21] => Array
                (
                    [name] => price_c
                    [value] => 
                )

            [22] => Array
                (
                    [name] => shipping_c
                    [value] => 
                )

            [23] => Array
                (
                    [name] => totalprice_c
                    [value] => 
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [name] => assigned_user_name
                    [value] => Jason Administrator
                )

            [1] => Array
                (
                    [name] => modified_by_name
                    [value] => Jason Administrator
                )

            [2] => Array
                (
                    [name] => created_by_name
                    [value] => Jason Administrator
                )

            [3] => Array
                (
                    [name] => id
                    [value] => 86f21f44-4b21-1826-3592-542c59e4be66
                )

            [4] => Array
                (
                    [name] => name
                    [value] => fdtgrfdhg
                )

            [5] => Array
                (
                    [name] => date_entered
                    [value] => 2014-10-01 19:41:54
                )

            [6] => Array
                (
                    [name] => date_modified
                    [value] => 2014-10-19 19:30:45
                )

            [7] => Array
                (
                    [name] => modified_user_id
                    [value] => 1
                )

            [8] => Array
                (
                    [name] => created_by
                    [value] => 1
                )

            [9] => Array
                (
                    [name] => description
                    [value] => 
                )

            [10] => Array
                (
                    [name] => deleted
                    [value] => 0
                )

            [11] => Array
                (
                    [name] => assigned_user_id
                    [value] => 1
                )

            [12] => Array
                (
                    [name] => chann_channelqms_id_c
                    [value] => 
                )

            [13] => Array
                (
                    [name] => channelqms
                    [value] => 
                )

            [14] => Array
                (
                    [name] => design_name
                    [value] => design name
                )

            [15] => Array
                (
                    [name] => design_number
                    [value] => 313
                )

            [16] => Array
                (
                    [name] => overall_height
                    [value] => 22
                )

            [17] => Array
                (
                    [name] => overall_width
                    [value] => 22
                )

            [18] => Array
                (
                    [name] => show_to_customer
                    [value] => 1
                )

            [19] => Array
                (
                    [name] => uploadfile
                    [value] => 2014-09-29_21-57-50.png
                )

            [20] => Array
                (
                    [name] => nam_channelletterqms_nam_channelletterqms_designs_name
                    [value] => Test
                )

            [21] => Array
                (
                    [name] => price_c
                    [value] => 
                )

            [22] => Array
                (
                    [name] => shipping_c
                    [value] => 
                )

            [23] => Array
                (
                    [name] => totalprice_c
                    [value] => 
                )

        )

)

在创建第一个数组时,您可能应该创建所需的数组,但如果您无法控制该数组,只想转换,那么类似的操作应该可以:

$newArray = array();

foreach($oldArray as $row){
    $tmp = array();
    foreach($row as $values){
        $tmp[$values['name']] = $values['value'];
    }
    $newArray[] = $tmp;
}

print_r($newArray);

在创建第一个数组时,您可能应该创建所需的数组,但如果您无法控制该数组,只想转换,那么类似的操作应该可以:

$newArray = array();

foreach($oldArray as $row){
    $tmp = array();
    foreach($row as $values){
        $tmp[$values['name']] = $values['value'];
    }
    $newArray[] = $tmp;
}

print_r($newArray);

如果您无法在源代码处更改它,那么这里有一种方法(PHP>=5.5.0对于
array\u column
)是必需的:

或者可能更容易:

foreach($design_values as $key => $values) {
    $result[$key] = array_column($values, 'value', 'name');
}

如果您无法在源代码处更改它,我们将使用

,那么这里有一种方法(PHP>=5.5.0是
array\u column
所需的):

或者可能更容易:

foreach($design_values as $key => $values) {
    $result[$key] = array_column($values, 'value', 'name');
}

我们使用

注意显示这样放置数据的循环吗?注意显示这样放置数据的循环吗?这非常有效,也感谢PHP实现的array_column,一开始我还以为我运气不好!它的工作原理和需要的一样。这工作原理很棒,也感谢array_column的PHP实现,我一开始还以为我运气不好呢!它可以根据需要工作