Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP乘法数组()*整数_Php_Post_Integer - Fatal编程技术网

PHP乘法数组()*整数

PHP乘法数组()*整数,php,post,integer,Php,Post,Integer,我的代码是: 帖子的HTML部分: <form action='key.php' method='POST'> <input type='number' name='consumervar[]' value='512'/> <input type='number' name='consumervar[]' value='256'/> <input type='number' name='consumervar[]' value='1024'/>

我的代码是:

帖子的HTML部分:

<form action='key.php' method='POST'> 
<input type='number' name='consumervar[]' value='512'/>
<input type='number' name='consumervar[]' value='256'/>
<input type='number' name='consumervar[]' value='1024'/>
<input type='submit'/>
</form>
请帮忙。如何正确地做?它需要将每个发布的值乘以整数64。

循环应该是

foreach($_POST['consumervar'] as $key => $value) {
              ^^^^^^^^^^^^^^^
正如所写的那样,您的代码提取出消费者值数组,您尝试将其相乘。在php中不能“乘法”数组

另外,请注意,循环生成的$key/$值只是数组中存在内容的副本。您没有更改数组的值。为此,你应该这样做

 $_POST['consumervar'][$key] = $value * 64;
循环应该是

foreach($_POST['consumervar'] as $key => $value) {
              ^^^^^^^^^^^^^^^
正如所写的那样,您的代码提取出消费者值数组,您尝试将其相乘。在php中不能“乘法”数组

另外,请注意,循环生成的$key/$值只是数组中存在内容的副本。您没有更改数组的值。为此,你应该这样做

 $_POST['consumervar'][$key] = $value * 64;
试试这个:

<?php
    $arr = isset($_POST['consumervar']) ? $_POST['consumervar'] : array();
    if(!is_array($arr)) die('some_error');

    foreach($arr as $key => $value) {
        $arr[$key] = $value*64;
    }
    print_r($arr); // this is for for debug (see array contents)
?>

$key
对应于HTML中
input
元素中的“name”。

尝试以下操作:

<?php
    $arr = isset($_POST['consumervar']) ? $_POST['consumervar'] : array();
    if(!is_array($arr)) die('some_error');

    foreach($arr as $key => $value) {
        $arr[$key] = $value*64;
    }
    print_r($arr); // this is for for debug (see array contents)
?>

$key
对应于HTML中的
input
元素中的“name”