0

我在构建菜单时遇到问题,我想创建一个这样的类:

class leftMenu{

public $items;

    function addItem ($num){

        for($i = 0; $i < count($num); $i++){
              $this->items[$i] += $num;
              echo $this->items[$i];
            }

    }

public function __destruct() {
      //echo "\n</body>\n</html>";
    }

}

我想像数组一样调用 addItem ,例如:

$menu = new leftMenu();
$menu->addItem("one", "two", "three"); // Here 1, 2, 3 should be an array

我不能让它工作......请帮助!ND

4

3 回答 3

1

您需要通过以下方式更新代码(我刚刚初始化了变量 $items ,以及您可以在评论中看到的另一个编辑):

class leftMenu{

public $items = array();  //intialize your variable $items

    function addItem ($num){

        for($i = 0; $i < count($num); $i++){
              $this->items[$i] = $num[$i]; //Edit this line too
              echo $this->items[$i];
            }

    }

public function __destruct() {
      //echo "\n</body>\n</html>";
    }

}

当你调用它时,像这样传递一个数组给它:

$menu = new leftMenu();
$menu->addItem(array("one", "two", "three")); // Here 1, 2, 3 should be an array
于 2013-02-15T21:45:41.640 回答
0
$items = array("one", "two", "three");

$menu->addItems($items);


function addItems($items = array()) {
  $this->items = $items;
}
于 2013-02-15T21:45:13.743 回答
-1

您需要将变量作为数组传递。试试这个:

$menu->addItem(array("one", "two", "three"));

于 2013-02-15T21:46:04.253 回答