<?php class Image{ private $path; public function __construct($path = './'){ $this->path = rtrim($path,'/').'/'; } public function thumb($name,$width,$height,$qz='s_'){ $data = $this->getInfo($name); var_dump($data); } private function getInfo($name,$path = '.'){ $spath = $path == '.'?rtrim($this->path,'/').'/':$path.'/'; $data = getimagesize($spath.$name); $imgInfo['width'] = $data[0]; $imgInfo['height'] = $data[1]; $imgInfo['type'] = $data[2]; return $imgInfo; } } //$th = new Image('./image'); //$th->thumb('11587 (1).jpg',100,100);
クラスの一部のメンバー属性は事前に宣言する必要があるのに、他のメンバー属性は事前に宣言する必要がないのはなぜですか?
$imgInfo を使用する代わりに属性 $path を宣言する必要があるのはなぜですか?
autoload2021-10-18 08:54:07
これはニーズに応じて異なります。たとえば、Person クラスでは、身長、体重などの一部の属性が共通です。それらを宣言することも、宣言しないこともできます。プライベートはプライベートを意味します。そのような属性を直接追加する方法はありません。オブジェクトを介した属性。プロパティは宣言を通じてのみ直接定義できます。