PHP中的抽象类可以有默认方法吗?

时间:2014-05-01 22:08:11

标签: php oop

我肯定在这里遇到了一些非常基本的错误。

以下是我的抽象类的代码:

private $outarray = null;

public function add_to_array($ahref, $docname, $description) {
  $row = array('ahref' => $ahref, 'docname' => $docname, 'description' => $description);
  if (!isset($this->outarray)) {
    $this->outarray = array();
  }
  array_push($this->outArray, $row);
}

screenshot

但是,当我单步执行代码时, outArray 仍为空。它永远不会被创建,也永远不会被填充。

我仍然是PHP的绿色,但这个帮助文档似乎让我相信这是可以做的:

http://www.php.net/manual/en/language.oop5.abstract.php

...特别是他们宣布执行某些操作的 Common方法 printOut()

我有5个元素,我试图填充outArray,但是我循环使用这个函数的5次,我出来时 outArray 为NULL。

2 个答案:

答案 0 :(得分:2)

变量区分大小写。你在一个地方$ this-> outarray和array_push你有$ this-> outArray

答案 1 :(得分:0)

呃。

PHP区分大小写,但它没有抱怨它,因为它假设我有动态声明的另一个变量。

正确的方式:

    public function add_to_array($ahref, $docname, $description) {
        $row = array('ahref' => $ahref, 'docname' => $docname, 'description' => $description);
        if (!isset($this->outarray)) {
            $this->outarray = array();
        }
        array_push($this->outarray, $row);
    }