0

在java代码中我有这个

ArrayList<NameValuePair> al = new ArrayList<NameValuePair>();

for (int i = 0; i < alitems.size(); i++) {

    al.add(new BasicNameValuePair("items[]", alitems.get(i)));
    al.add(new BasicNameValuePair("qty[]", alnoof.get(i)));
    al.add(new BasicNameValuePair("price[]", alprice.get(i)));
}

注意:这里的alitems、alnoof、alprice是ArrayLists

php代码

foreach (array_combine($_POST['items'], $_POST['qty']) as $val => $no) {

   $v = mysql_real_escape_string($val);
   $va = mysql_real_escape_string($no);
}

现在我能够获得 $v 和 $va 的 2 个数组值,但我无法获得价格数组列表。怎么做?

suppose $_POST['items']={pencil,pen,watch}
        $_POST['qty']={2,3,4}
        $_POST['price']={20,30,40}

我需要在数据库中插入值:

pencil,2,20   pen,3,30   watch,4,40

请帮助我如何实现这一目标。

4

1 回答 1

2

PHP也有for循环

$_POST['items'] = ["pencil","pen","watch"];
$_POST['qty'] = [2,3,4];
$_POST['price'] = [20,30,40];

for($i = 0; $i < count($_POST['items']); $i ++) {
    echo $_POST['items'][$i], " ", $_POST['qty'][$i], " ", $_POST['price'][$i], PHP_EOL;
}

或者

foreach ( array_map(null, $_POST['items'], $_POST['qty'], $_POST['price']) as $var ) {
    list($item, $qty, $price) = $var;
    echo $item, " ", $qty, " ", $price, PHP_EOL;
}

请不要[]只在 PHP >=5.4其他你必须使用的地方支持array()

于 2012-11-19T07:03:37.307 回答