首页 > 后端开发 > 正文

php 为什么调用 类中函数要用 $this->

2024-07-19 03:19:28 | 我爱编程网

php 为什么调用 类中函数要用 $this->相关内容,小编在这里做了整理,希望能对大家有所帮助,关于php 为什么调用 类中函数要用 $this->信息,一起来了解一下吧!

本文目录一览:

php 为什么调用 类中函数要用 $this->

php 为什么调用 类中函数要用 $this->

类方法调用在其他语言通常是 点 (.),而php将点当作连接符,所以才用单箭头。

类的本质和命名空间一样,都是控制作用域,像::运算符。
php中切换命名空间使用斜杠(忘了是正的还是反的了)。
这些运算符相当于声明。

php 为什么调用 类中函数要用 $this->

php"直接用类名"和"new实例化"调用函数哪种方法效率更高?

1.首先用法不同,__new__()用于创建实例,所以该方法是在实例创建之前被调用,它是类级别的方法,是个静态方法;

而 __init__() 用于初始化实例,所以该方法是在实例对象创建后被调用,它是实例级别的方法,用于设置对象属性的一些初始值。

由此可知,__new__()在__init__() 之前被调用。如果__new__() 创建的是当前类的实例,会自动调用__init__()函数,通过return调用的__new__()的参数cls来保证是当前类实例,如果是其他类的类名,那么创建返回的是其他类实例,就不会调用当前类的__init__()函数。

2.其次传入参数不同

__new__()至少有一个参数cls,代表当前类,此参数在实例化时由Python解释器自动识别;

__init__()至少有一个参数self,就是这个__new__()返回的实例,__init__()在__new__()的基础上完成一些初始化的操作。

3.返回值不同

__new__()必须有返回值,返回实例对象;

__init__()不需要返回值。



另外谈谈__new__()的作用,__new__()方法主要用于继承一些不可变的class,比如int, str, tuple, 提供一个自定义这些类的实例化过程的途径,一般通过重载__new__()方法来实现。代码如下

另外__new__()方法还可以用来实现单例模式,也就是使每次实例化时只返回同一个实例对象。

php 为什么调用 类中函数要用 $this->

PHP怎么调用其他类的方法

我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP怎么调用其他类的方法的相关内容。

在Java的调用方法是import,而在PHP中没有import这个函数,一般PHP中调用其他类是用到require(),具体PHP调用其他类的方法如下:

1、首先应该先有一个文件名为tool.php的文件,在文件中声明一个类。

2、然后需要有另一个文件名为main.php的文件,在文件中调用上面的类。方法如下。

扩展资料:

类是变量与作用于这些变量的函数的集合。使用下面的语法定义一个类:

<?php

class Cart { var $items; // 购物车中的物品

// 将 $num 个 $artnr 物品加入购物车

function add_item($artnr, $num) {

$this->items[$artnr] += $num;

} // 将 $num 个 $artnr 物品从购物车中取出 我爱编程网

function remove_item($artnr, $num) {

if ($this->items[$artnr] > $num) {

$this->items[$artnr] -= $num; return true;

} elseif

($this->items[$artnr] == $num) {

unset($this->items[$artnr]); return true;

} else {

return false; }

}

} ?>

上面的例子定义了一个 Cart 类,这个类由购物车中的商品构成的数组和两个用于从购物车中添加和删除商品的函数组成。

参考资料来源: 百度百科-php类

以上就是php 为什么调用 类中函数要用 $this->全部内容了,了解更多相关信息,关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“php 为什么调用 类中函数要用 $this->”相关推荐
为什么类里要有const函数,const函数在类里有什么作用?
为什么类里要有const函数,const函数在类里有什么作用?

php中const和define的区别define部分:宏不仅可以用来代替常数值,还可以用来代替表达式,甚至是代码段。(宏的功能很强大,但也容易出错,所以其利弊大小颇有争议。)宏的语法为:#define宏名称宏值作为一种建议和一种广大程序员共同的习惯,宏名称经常使用全部大写的字母。利用宏的优点:1)让代码更简洁明了当然,这有赖于你为宏取一个适当的名字。一

2024-11-25 21:12:30
php调用函数为什么会出错?
php调用函数为什么会出错?

php调用函数为什么会出错?你好,很高兴能为您回答这个问题。php中的函数不是这样的调用的,php是在服务器端执行的,你这个onclick是在客户端执行的,所以,onclick调用的是javascript或vbscipt等其它前端脚本。你这样,测试一下,应该会明白了。希望可以帮助你!php自定义函数不能调用是怎么回事注意到你在使用_html这个自定义方法之前,只加载执行了一

2024-08-21 14:56:55
如何在主函数中调用类中的成员函数调用
如何在主函数中调用类中的成员函数调用

如何在主函数中调用类中的成员函数调用主函数中调用类中的成员函数调用方式为:对象名.成员函数名(参数列表)。其中“.”是成员运算符,用来对成员进行限定,指明所访问的是哪一个对象中的成员。不仅可以在类外引用对象的公用数据成员,而且还可以调用对象的公用成员函数,但同样必须指出对象名,如:stud1.display();//正确,调用对象stud1的公用成员函数。displ

2024-10-26 18:56:23
php修改类函数 php里面$this-> =  用法和意思
php修改类函数 php里面$this-> = 用法和意思

php里面$this->=用法和意思第一行:$this-&gt;srvMobile表示该函数所属类中$srvMobile成员变量,所以这行代码表示将等号左面的值赋给该类$srvMobile成员变量。补充:由于等号右面使用&amp;符号,所以这两个变量是共用一个地址,当修改$this-&gt;srvMobile的时候,也就修改了$srvMobile;第二行:同理第一行第三行:将TE

2025-01-17 18:38:46
thinkphp 自定义函数怎么调用,需要设置写什么?
thinkphp 自定义函数怎么调用,需要设置写什么?

thinkphp自定义函数怎么调用,需要设置写什么?在indexcontroller.class.php里面需要引入function.php然后在indexcontroller.class.php的functionindex(){aaa();}如何在PHP中使用trigger_error()函数创建并处理自定义错误消息?在PHP中,trigger_error()函数扮演着创建

2024-07-21 16:43:29
为了方便调试程序php提供了什么函数用于查看变量的值和数据类
为了方便调试程序php提供了什么函数用于查看变量的值和数据类

php常用bc函数探索PHP中的强大计算工具:bc函数集在PHP的世界里,bcadd就像是一位精密的计算器,它为我们提供了两个任意精度数字之间无比精准的加法运算,无论是微小的数字还是天文数字,都能轻松应对。bcsub则扮演着减法专家的角色,确保每一个细微的减法操作都能得到准确的结果,无论是商业计算还是科学计算,它都能胜任有余。乘法任务就交给bc

2024-08-15 20:13:58
php中为什么函数在未被定义前调用也能成功执行?
php中为什么函数在未被定义前调用也能成功执行?

PHP直接调用函数和调用另外一个文件中的函数的区别//如果是PHP文件中的函数,唯一的区别是:先引入外部文件,然后直接调用。//如果是外部类文件中的函数,需要引入,然后new 对象后,再调用该对象的函数。$msg=test_msg();function test_msg(){echo "";}//调用外部文件中的函数//首先引入文件include_once 'file.php';$msg=t

2024-10-08 23:42:54
JavaScript的函数为什么可以在定义之前调用
JavaScript的函数为什么可以在定义之前调用

PHP的闭包(closures)解析闭包函数在PHP中是一个没有指定名称的函数,通常用于回调。在回调的基本使用中,闭包函数可以作为参数传递给需要调用的函数。例如在preg_replace_callback函数中,第二个参数通常是一个匿名函数,该函数会在匹配目标字符串时被调用,并将匹配到的结果作为参数传递。在闭包函数变量赋值使用中,闭包函数可以被赋值给一个变量。通过调用该变量,可以执行闭

2025-02-19 17:54:34