echo中的PHP数组

时间:2013-09-12 21:24:58

标签: php arrays

我有一项任务要做,但我无法理解给定的伪代码:/

<?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>";
?>

现在我的麻烦开始于了解他们希望我在“打印”调用后如何构建数组?我不是在寻找一个直接的答案,可能只是一个教程链接或一个正确方向的手指

提前谢谢

3 个答案:

答案 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");

文档:http://php.net/manual/en/language.types.array.php

答案 2 :(得分:1)

不太可能但是array可能不是构造而是伪代码中的类。我的假设取决于使用new关键字以及->addrocks的用户,它们看起来像是一种方法。

所以,创建一个名为array 的类(我知道愚蠢)并继续。

然而,foreach($bucket)的用户也表明它希望$ bucket是数组。所以明智地决定:)

可以在类中使用名为__toString()的魔术方法并返回数组。