这可能是一个笼统的标题,但我会尽力以最好的方式解释我的问题。
所以我有这种类型的关联数组:
Array
(
[ICO_0] => checked
[Investment_0] => checked
[Investment_1] => checked
[Marketing_1] => checked
)
我想做的是根据附加到键末尾的数字( 0, 1 ... )将其分成多个数组。基本上我想让一个新数组看起来像这样:
Array(
Array(
[ICO_0] => checked
[Investment_0] => checked
[Token Sale_0] => checked
),
Array(
[Investment_1] => checked
[Marketing_1] => checked
)
)
我试过用 array_chunk 解决这个问题,但无法让它工作。
我需要这个输出,因为我想根据它们持有的项目对这些嵌套数组进行排序,从项目的最高数量开始。
谢谢!
您可以使用多种不同的方法来完成此操作。一种方法是循环遍历并分解键名,如果您知道总会有一个下划线,则获取最后一个数字,并将其用作索引:
$results = [
"ICO_0" => "checked",
"Investment_0" => "checked",
"Investment_1" => "checked",
"Marketing_1" => "checked",
"Investment_2" => "checked",
"Marketing_2" => "checked"
];
foreach($results as $key => $value){
$ex = explode('_', $key);
$new_result[end($ex)][$key] = $value;
}
这对我来说返回以下内容:
array:3 [▼
0 => array:2 [▼
"ICO_0" => "checked"
"Investment_0" => "checked"
]
1 => array:2 [▼
"Investment_1" => "checked"
"Marketing_1" => "checked"
]
2 => array:2 [▼
"Investment_2" => "checked"
"Marketing_2" => "checked"
]
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句