我有两组来自$_POST
的数组。对于这两个键将数字和数量是相同的,因为它们是成对出现的姓名和电话号码:合并帖子值并删除空
$_POST[names]
(
[0] => First
[1] => Second
[2] =>
[3] => Fourth
)
$_POST[numbers]
(
[0] => 10
[1] =>
[2] => 3
[3] => 3
)
现在我需要这两个结合起来,但除去其中任一值丢失的每个条目。
结果应该是这样的:
$finalArray
(
[First] => 10
[Fourth] => 3
)
后的数据是动态创建的,因此有可能是根据用户输入缺少不同的值。
我试图做这样的事情:
if (array_key_exists('names', $_POST)) {
$names = array_filter($_POST['names']);
$numbers = array_filter($_POST['numbers']);
if($names and $numbers) {
$final = array_combine($names, $numbers);
}
}
但我似乎不能正确地过滤它,因为它给我的错误:
Warning: array_combine(): Both parameters should have an equal number of elements
我们可以假定这两个阵列将始终具有相同的数,而且键将永远是数字? –
是的,两个键都是数字,计数也是一样的,因为它们是成对的名字和数字。 – Alko
@Alko我为每个答案都添加了一些相关评论。请仔细阅读该页面,了解可能对您和其他人有用的一些见解。 – mickmackusa