Php 添加到嵌套数组
我有一个问题,我试图将值从一个数组添加到嵌套在原始数组名称下的另一个数组 例如,此脚本返回一个数组:Php 添加到嵌套数组,php,arrays,Php,Arrays,我有一个问题,我试图将值从一个数组添加到嵌套在原始数组名称下的另一个数组 例如,此脚本返回一个数组: <?php return array ( 'HTTP' => array( 'GET' => array( '/' => function() { }, ), 'POST' => array( '/' => function($username, $password) {
<?php
return array (
'HTTP' => array(
'GET' => array(
'/' => function() {
},
),
'POST' => array(
'/' => function($username, $password) {
},
)
),
'HTTPS' => array(
'GET' => array(
'/account/(:num)' => function($number) {
}
)
)
我正在做的是使用glob读取所有文件,但我无法解决的问题是如何循环通过第一个scrspt中的所有数组并将它们推送到var中
风险值为:
private $routes = array(
'HTTP' => array(
'GET' => array(
'example' => array(
'/' => function() {
},
)
),
'POST' => array(
'example' => array(
'/account/(:num)' => function($number) {
},
)
)
),
'HTTPS' => array(
'GET' => array(
'example' => array(
'/' => function() {
},
)
),
'POST' => array()
),
'FILTRERS' =>
'BEFORE' => array(),
'AFTER' => array()
);
我能想到的唯一原因是使用大约四个嵌套的foreach,或者为每个数组集复制代码假设第一个数组存储在$input中,您可以使用它。我已经根据您的预期输出硬编码了“示例”
foreach ($input as $protocol => $methods) {
foreach ($methods as $method => $routeArray) {
$routes[$protocol][$method]['example'] = $routeArray;
}
}
使用递归函数我不确定如何使用递归函数,因为我不确定如何推入嵌套数组。因为array_push添加到主数组的末尾。“example”来自哪里?“过滤器”应该是没有额外R的“过滤器”吗?@David啊,我没看到,谢谢。
foreach ($input as $protocol => $methods) {
foreach ($methods as $method => $routeArray) {
$routes[$protocol][$method]['example'] = $routeArray;
}
}