$this和self都是PHP中用于访问类的属性和方法的特殊关键字,但它们的用法和上下文有所不同。$this关键字用于访问当前对象的属性和方法,而self关键字用于访问类的静态属性和方法。理解它们的区别和正确用法,可以帮助你编写更加清晰、可维护的PHP代码。在实际应用中,$this通常用于访问和修改对象的实例属性,以及调用非静态...
php this和self的区别 php this和self的区别,从字面上来理解,分别是指 这、自己、父亲。先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。 我们这里频繁使用指针来描述,是因为没有更好的语言来表达。关于指针的概念,大家可以去参考百科。 下面我们...
先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针。我们这里频繁使用指针来描述 因为经常用框架的缘故,所以对php底层的一些运行机制和方法都不会了,所以最近比较喜欢研究这些底层的东西,写的东西虽然不是很好,但是自己一步步实地操作过来的,理解起来也比较容易,现在网上大多数的...
1.self代表类,$this代表对象 2.能用$this的地方一定使用self,能用self的地方不一定能用$this 静态的方法中不能使用$this,静态方法给类访问的。 今天在使用静态方法的时候,使用了$this去调用对象的属性,导致曝出错误信息,在网上查询了手册和百度, 发现大部分回答只是说明了在静态方法中不允许使用$this,只能使用sel...
在PHP类中,self和$this的区别在于它们代表的对象类型。self代表类,而$this代表对象实例。在静态方法中,只能使用self来调用类的属性或方法,而$this不能用于静态方法。因为静态方法属于类而非实例,所以它们无法访问$this指向的实例属性。使用静态方法的优势在于它们不需要创建对象实例即可调用,效率更高。
参考文章:php 中self,this的区别和实地操作 1.self ①self可以访问本类中的静态属性和静态方法,可以访问父类中的静态属性和静态方法。用self时,可以不用实例化。 classparent_test{static$parent_test;publicfunction__construct(){self::$parent_test='parent_test';//静态属性只能通过self来访问}staticpublicfunct...
这里我主要谈的是 this,self,parent 三个关键字之间的区别。从字面上来理解,分别是指 这、自己、父亲。先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。 1.this <?phpclassUserName
在PHP类中,self和$this代表不同的概念。self代表类,而$this代表对象实例。在静态方法中,只能使用self调用类,不能使用$this调用对象,因为静态方法是类级别的,而非实例级别的。在静态方法中使用$this导致错误,因为静态方法属于类,而$this属于对象实例。这说明了在静态方法中使用$this是不正确的做法...
php中this和self的区别是:self调用的是类,而$this调用的是实例化的对象。self可以访问本类中的静态属性和静态方法,以及const定义的常量,this可以调用本类中的方法和属性。 区别: self调用的是类,而$this调用的则是实例化的对象。 下面我们来详细说明一下: ...