我有一项任务要做,但我无法理解给定的伪代码:/
<?php
$bucket = new array();
print $bucket->addrocks('Rock1')->addrocks('rock2')-
>addrocks('Rock3');
echo "<h1>My Bucket</h1>";
echo "<ul>";
foreach($bucket as $rock){
echo "<li>". $rock ."</li>";
}
echo "</ul>";
?>
现在我的麻烦开始于了解他们希望我在“打印”调用后如何构建数组?我不是在寻找一个直接的答案,可能只是一个教程链接或一个正确方向的手指
提前谢谢
答案 0 :(得分:3)
在PHP中,new
仅用于实例化objects此外,array
在PHP中是reserved word,因此将您的类命名为其他内容。要在PHP中实例化数组,请执行以下操作:
$my_array = array();
现在要将数据添加到数组中,您可以执行此操作:
$my_array[] = "Rock 1";
$my_array[] = "Rock 2";
$my_array[] = "Rock 3";
要遍历数组,您可以使用任何类型的循环,但通常只使用foreach
循环。
例如:
foreach($my_array as $key => $value) {
echo $value . "<br />";
}
答案 1 :(得分:1)
问题在于数组构造。这是在PHP中构造数组的方式:
逐一:
$bucket = array();
$bucket[] = "Rock1";
$bucket[] = "Rock2";
$bucket[] = "Rock3";
一下子:
$bucket = array("Rock1","Rock2","Rock3");
答案 2 :(得分:1)
不太可能但是array
可能不是构造而是伪代码中的类。我的假设取决于使用new
关键字以及->
和addrocks
的用户,它们看起来像是一种方法。
所以,创建一个名为array
的类(我知道愚蠢)并继续。
然而,foreach($bucket)
的用户也表明它希望$ bucket是数组。所以明智地决定:)
可以在类中使用名为__toString()
的魔术方法并返回数组。