我的帖子数组如下
array(106) {
["service1"] => string(2) "No"
["in_house1"]=> string(2) in"
["service2"]=> string(2) "No"
["in_house2"]=> string(2) "in"
["service3"]=> string(2) "No"
["in_house3"]=> string(2) "in"
...
}
我想使用While循环插入这些值。 我该如何拆分数组变量?
例如:我希望将["service1"]
拆分为service.$i
你能否提出任何解决方案。
答案 0 :(得分:2)
似乎没有简单的快捷方式..你可以简单地做一个循环
$service=array();
for ($i=1;isSet($_POST["service".$i]);$i++)
$service[$i] = $_POST["service".$i];
答案 1 :(得分:0)
正如@FirstOne所说,你的问题有点不清楚。但我会尝试用你的问题标签来解释它。
我认为您正在寻找针对此问题发布的答案: How to loop through an associative array and get the key?
所以要重新编写答案代码到你的案例:
foreach ($arr as $key => $value) {
echo "Item: " . $key . " Status:" . $value;
}
只需遍历通过post获得的数组并写入项目名称和状态/值。因此,在foreach中,您可以选择使用关联数组的键和值来执行任何操作。
因此,要按照您的意愿将它们分开,可以使用正则表达式模式将名称和数字与项目名称分开,然后根据该值将值分配给变量或单独的数组。
答案 2 :(得分:0)
我认为您错过了HTML表单格式的内容。因为你要做的是发送HTML" array"数据
您可以通过在输入名称中添加[]作为后缀来执行此操作。
<input type="checkbox" name="services[]" value="1" />
<input type="checkbox" name="services[]" value="2" />
然后,您可以使用以下命令检索POST数组:
<?php
foreach($_POST['services'] as $service){
echo $service;
}