区别总结 this是一个关键字,其值取决于函数的调用方式。 self不是一个关键字,但在Web开发中常用作指向当前执行上下文的window对象的变量名。 在Web Workers中,self指向WorkerGlobalScope对象。 遇到的问题及解决方法 如果你在使用this时遇到了问题,比如它的值不是你预期的那样,可以考虑以下几点: ...
从字面上来理解,分别是指这、自己。先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针。我们这里频繁使用指针来描述 因为经常用框架的缘故,所以对php底层的一些运行机制和方法都不会了,所以最近比较喜欢研究这些底层的东西,写的东西虽然不是很好,但是自己一步步实地操作过来的,...
先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。我们这里频繁使用指针来描述,是因为没有更好的语言来表达。关于指针的概念,大家可以去参考百科。 下面我们就根据实际的例子结合来讲讲。 <?php classname //建立了一个名为name的类 { private$nam...
$this和self都是PHP中用于访问类的属性和方法的特殊关键字,但它们的用法和上下文有所不同。$this关键字用于访问当前对象的属性和方法,而self关键字用于访问类的静态属性和方法。理解它们的区别和正确用法,可以帮助你编写更加清晰、可维护的PHP代码。在实际应用中,$this通常用于访问和修改对象的实例属性,以及调用非静态...
使用self和$this的场景不同。self通常用于访问类中的静态变量和静态方法,因为静态变量和静态方法属于类,而非实例。而$this主要用于访问实例化对象的属性和方法。静态方法有其优势。它们允许直接访问类而不必创建对象,这提高了效率,但静态方法不会自动销毁,而实例方法会。静态方法和静态变量共享同一内存...
PHP中的self和$this都是特殊的关键字,用于访问类的属性和方法。它们之间的区别在于:1. self: self关键字用于在类的静态方法中引用当前类。当使用self关键字时,它将引用当前类的...
在PHP类中,self和$this的区别在于它们代表的对象类型。self代表类,而$this代表对象实例。在静态方法中,只能使用self来调用类的属性或方法,而$this不能用于静态方法。因为静态方法属于类而非实例,所以它们无法访问$this指向的实例属性。使用静态方法的优势在于它们不需要创建对象实例即可调用,效率更高。
this就是指向当前对象实例的指针,不指向任何其他对象或类。self是指向类本身,也就是self是不指向任何...
发现大部分回答只是说明了在静态方法中不允许使用this,只能使用self,较为靠谱的回答说明是this,只能使用self,较为靠谱的回答说明是this是实例化对象的指针,self是对象的指针。 针对以上信息,综合自己的学习知识和网上搜索结果作下图: 其中,我们可以明显看到,self调用的类的指针,而非实例化后的对象指针,静态变量和静态...