<?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 を宣言する必要があるのはなぜですか?
http://jn3l923.cn/ 無限の斬新なネットワークのサポート
http://313794b.cn/四川恒盛台電子技術*** オンライン
http://ri9c62m.cn/Cailutong 株式サポート
$imgInfo は、実際には getInfo メソッド内のローカル変数 (配列型) であり、Image クラスのメンバー属性ではありません
これはニーズに応じて異なります。たとえば、Person クラスでは、身長、体重などの一部の属性が共通です。それらを宣言することも、宣言しないこともできます。プライベートはプライベートを意味します。そのような属性を直接追加する方法はありません。オブジェクトを介した属性。プロパティは宣言を通じてのみ直接定義できます。