【问题标题】:Accessing PHP array passed through $_POST访问通过 $_POST 传递的 PHP 数组
【发布时间】:2014-11-04 22:24:45
【问题描述】:

我通过 $_POST 传递了 2 个数组,并尝试在 php 函数中使用数据。我可以使用foreach 循环遍历每个数组。

但是,我需要循环访问其中一个数组,同时串联访问另一个数组(即,在 array1 的第一个元素上,我需要访问 array2 的第一个元素)——因此嵌套的 foreach 循环显然不会没救了。

我发现我无法通过数字索引访问这些值,但是数组的第一个值除外。

任何帮助将不胜感激。

这是当前的sn-p:

$count = 1;
    foreach ($quantityArray as $quantity):  
        if($quantity < 1){
        ... 
        $order_to_item_idArray[$count]…..
        }
        if($quantity > 0){
        ...             
        $order_to_item_idArray[$count]…...
        }
        ...
    $count = $count + 1;
endforeach;

【问题讨论】:

  • 你可以使用一个简单的 for 循环吗?

标签: php arrays post


【解决方案1】:

你会想用这样的东西来实现你想要的:

$a as $key => $c

这里(作为伪代码):

$a = array('dsa','das','asf');
$b = array('aaa','eee','ggg');

foreach ($a as $key => $c)
{
    echo $c . " - " .$b[$key];
}

对于您的代码,该行将是:

foreach ($quantityArray as $key => $quantity) 

【讨论】:

  • 太好了——谢谢!为什么这行得通,但不能按索引访问?
  • 好吧,它确实适用于索引,但是在您的代码中您正在编写 $count = 1,但它应该是 $count = 0,因为数组以 0 开头,而不是 1。您应该使用$count++ 而不是 $count = $count + 1。虽然我会考虑使用 $count 方式不好的做法,因为我的答案中的做法更容易且防错。
猜你喜欢
  • 2011-07-31
  • 2016-08-09
  • 2013-06-04
  • 2020-01-25
  • 2018-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多