0

我从上一页提交了多个输入标签,比如 step1.php:

<input type="hidden" name="block01" value="001"/>
<input type="hidden" name="block02" value="012"/>
<input type="hidden" name="block03" value="002"/>
<input type="hidden" name="block04" value="005"/>
<input type="hidden" name="block05" value="008"/>
<input type="hidden" name="block06" value="015"/>

现在我想在 step2.php 中处理这些输入,并且我有 2 个选项可以使用 Array 或 Loop。

如果我使用数组,这些输入将像这样附加:

<?php
$stack = array(""); //empty array declared

// I assume I have some codes here to 'catch' those inputs and put it as array_push
array_push($stack, "001", "012", "002", "005", "008", "015");
print_r($stack);
?>

与数组相比,我也有这个 LOOP 选项:

<?php
$i = 1;
$x = 'block0'.$i;
$webBlock = $_POST[$x];

while (!empty($webBlock)){
    $x = 'block0'.$i;
    $webBlock = $_POST[$x];
    echo $webBlock . "<br />";  
    $i++;
}

?>

两者都是我在 step2.php 上的问题的解决方案。我只需要您的意见,哪个内存/ cpu 消耗更少?就这样...

谢谢!

4

1 回答 1

1

在第一种情况下,您使用的是 array_push() 和 print_r()。第一个函数使用循环将传递的参数压入堆栈。第二个函数 print_r() 也使用循环来打印数组的所有值。所以,基本上你运行循环两次来完成任务。

在第二种情况下,您已经编写了一个代码来同时处理这两种事情。所以,这个方法只需要循环一次。此外,查看 print_r() 和 echo 的工作情况,如果您运行 echo X 次并使用 print_r() 打印 X 值,则 echo 比 print_r 快一点。阅读 php 文档以获取有关所有这些功能的更多信息。

所以,第二种方式更好。

于 2012-10-19T10:46:31.113 回答