所以循环不打印,我不明白为什么?我只是一个初学者,所以我真的很困惑为什么它不起作用。如果你们能解释其背后的原因那就太棒了。
<html>
<body>
<?php
$numbers = array(4,6,2,22,11);
sort($numbers);
function printarray($numbers, $x) {
$countarray = count($numbers);
for($x = 0; $x < $countarray; $x++) {
echo $numbers[$x];
echo "<br>";
}
}
printarray();
?>
</body>
</html>
答案 0 :(得分:1)
您需要将变量添加到您的函数中:
printarray($numbers);
您还可以在函数本身创建和销毁函数时从函数中删除$ x。
答案 1 :(得分:0)
由于您是初学者,您可能有兴趣了解foreach
。您可以使用它来大大简化您的功能:
<?php
$numbers = array(4,6,2,22,11);
sort($numbers);
function printArray($nums) {
foreach($nums as $num) {
echo $num;
echo "<br>";
}
}
printArray($numbers);
一旦您习惯使用foreach
,请查看array_map
,array_filter
和array_reduce
,以便更简化您的代码。
<?php
$numbers = array(4,6,2,22,11);
$sort($numbers);
function printArray($nums) {
array_reduce($nums, function ($carry, $item) {
echo $carry .= $item . "<br>";
});
}
printArray($numbers);
既然你是初学者,请查看PHP The Right Way并练习。获得经验后,再次查看PHP The Right Way并练习更多内容。然后再次。再一次。