认识php对象

本文深入探讨了PHP类中静态属性、普通属性、方法的定义与使用方式,详细解析了对象与类之间的相互作用及调用机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

class a{
    static $s = 0;
    var $v = 1;
    function f(){
        echo 'sss';
    }

    function f1(){
        $this->f();
    }

    function f2(){
        self::f();
    }
}
1.$s 是类 a 里的静态属性. 这个属性是属于这个类的. 而不是对象的,所以可以直接调用.
echo a::$s;//输出是0

/*对象是不能用的*/
$o = new a;
var_dump($o->s);//输出是NULL
$o->$s;//这里会报错(Fatal error: Cannot access empty property in /var/www/test.php)
echo $o::$s;//这是可以用的.输出0
2. $v 这个是类的普通属性, 这种属性是属于对象的, 而不是类的,必须先用这个类形成一个对象.通过这个对象才能调用
$o = new a;
echo $o->v;//输出1
3.类的方法,没有特殊声明的方法的属于public方法,类和对象都能用
a::f()//可用
$o = new a;
$o->f();//可用

4.在类和对象内部调用的方法

$this 表示对象内的调用.只有在用类(class)生成一个对象后, $this 代表本对象

$o = new a;
$o->f1();//这是对的
a::f1()//会报错(Fatal error: Using $this when not in object context )

/*self 类内部的调用方法.调用本类内的方法.*/
$o = new a;
$o->f2();//这是对的;
a::f2();//这是对的;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值