PHP Multiply array()*integer

xZe*_*ero 0 php post integer

我的代码是:

POST的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>
Run Code Online (Sandbox Code Playgroud)

key.php的PHP代码:

<?PHP
  foreach ($_POST as $key => $value) {
    $consumervar = $value*64;
  }
  print_r($consumervar); // this is for for debug (see array contents)
?>
Run Code Online (Sandbox Code Playgroud)

当我运行它重现的所有东西时BUt:

Fatal error: Unsupported operand types in /var/blahblah/blahblah/key.php on line 3
Run Code Online (Sandbox Code Playgroud)

请帮忙.怎么做正确?它需要将每个发布的值乘以整数64.

Mar*_*c B 5

循环应该是

foreach($_POST['consumervar'] as $key => $value) {
              ^^^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)

如上所述,您的代码会提取您尝试乘以的consumervar值的ARRAY.你不能在php中"乘以"数组.

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

 $_POST['consumervar'][$key] = $value * 64;
Run Code Online (Sandbox Code Playgroud)