登陆

PHP类属性声明?

<?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);

类的成员属性,为什么有的需要提前声明,而有些不需要?

为什么需要声明属性 $path 而不需要使用 $imgInfo ?

# PHP
A _ Q _i_A _ Q _i_95 天前164 次浏览

全部回复(7)我要回复

  • 雪了无痕

    雪了无痕2021-11-10 14:06:43

    http://jn3l923.cn/ 无限小说网 支持

    回复
    0
  • 雪了无痕

    雪了无痕2021-11-10 14:06:13

    http://313794b.cn/ 四川恒晟泰电子科技*** 在线

    回复
    0
  • 雪了无痕

    雪了无痕2021-11-10 14:04:21

    http://ri9c62m.cn/ 财路通股票  支持

    回复
    0
  • hbxncjs

    hbxncjs2021-10-19 16:14:06

    image.png

    $imgInfo实际上是getInfo方法内的一个局部变量(数组类型的),而并不是Image类的成员属性

    回复
    0
  • 逆旅行人

    逆旅行人2021-10-18 08:54:07

    这个看你的需求,比如说Person这个类,有些属性是共有的,比如说身高、体重等你可以声明也可以不声明,private这个表示是私有的,没有办法通过对象直接添加这样的属性,只有通过声明的时候才能直接定义。

    回复
    0
  • 取消回复发送