我正在尝试将 OOP 原则与我正在开发的网络应用程序结合起来。
给定一个类 ImageData 定义为
class ImageData {
private $count;
private $dirArray;
public function __construct() {
$count = 0;
$dir = "panos/thumbs";
$dirCon = opendir($dir);
while ($name = readdir($dirCon)){
if (strtolower(substr($name, -3)) == "jpg"){
$dirArray[]= $name;
}
}
sort($dirArray);
$count= count($dirArray);
closedir($dirCon);
}
public function getCount(){
return $this->count;
}
public function getArray(){
return $this->dirArray;
}
}
我想使用此处的信息来呈现网页。在指定的 div 元素中,我有
$imageData = new ImageData();
$count = $imageData->getCount();
$data = $imageData->getArray();
但是,$count
并$data
没有在本地实例化,并且包含的信息不可在渲染代码中使用。我已经逐步完成了 xdebug 中的代码,并且构造函数将预期值分配给$count
and $data
。在 Java 和 C 中,不需要在声明时实例化变量。这对 PHP 来说是真的吗?