【发布时间】:2016-08-26 13:51:21
【问题描述】:
我遇到了 php 循环问题。
也许有更好的方法来做到这一点。目前我的post 正在返回
array(4) {
[1]=> string(2) "on"
["1-qty"]=> string(1) "1"
[5]=> string(2) "on"
["5-qty"]=> string(1) "9"
}
我正在尝试创建一个包含 2 个数组的新数组,如下所示
array(2) {
array(2) {
[category]=> string(2) "1"
["qty"]=> string(1) "1"
}
array(2) {
[category]=> string(2) "5"
["qty"]=> string(1) "9"
}
}
我已经尝试了所有可以组合在一起的 foreach 和 for 循环。主要问题是我需要的第一个值是键而不是第一个数组的值。然后我需要从主数组中取出前两个数组并添加到一个新数组中,第一个数组键是数组中第一个键类别的新值,第二个数组的值是新的值在数组中键入 qty,并按 post 变量中的 2 个 foreach 组重复
当前循环(不工作)
$data = $this -> input -> post();
$dCount = count($data);
$newCount = $dCount / 2;
$fin = array();
for ($i = 0; $i <= $newCount; $i++) {
$vals = array_slice($data, 0, $i + 1, true);
$qty = array_slice($vals, 0, $i , true);
$key = current(array_keys($qty));
$final = array('category' => $key, 'qty' => $qty[$key . '-qty']);
$fin[] = $final;
}
【问题讨论】:
标签: php arrays string loops multidimensional-array