php类的重载,php函数重载

本文目录一览:

PHP是什么

PHP(PHP:Hypertext Preprocessor递归缩写)中文名字是:“超文本预处理器”,是一种广泛使用的通用开源脚本语言,适合于Web网站开发,它可以嵌入HTML中。编程范型是面向对象、命令式编程的,截止2019年4月24日为止,最新的版本是PHP 5.6.0(28 Aug 2014),其操作的系统为windows/linux/Mac跨平台。

扩展资料:

PHP的功能

1、创建博客

使用PHP创建博客wordpres,可以轻松创建博客。即使您不具备PHP知识,也可以使用它,但如果您可以编写PHP,则可以自定义您的博客并创建主题。

2、网站开发

60%全球互联网网站采用php技术,80%国内互联网网站使用php开发。这些网站包含购物网站,政府企业网站,QQ空间,论坛博客等等。

3、移动端微网站开发以及小程序

移动设备的普及为移动互联网的快速发展奠定了基础!手机淘宝网站,手机京东网站等等, 微信公众号应用中的微网站。

参考资料来源:百度百科——PHP

php中重载是多太的另一种实现方式,本人贴出原书实力代码,请求解答,实例代码一运行就报错

首先你这个报错是因为一个类定义里不能直接写表达式,必须放在方法里面。可能是你不小心把大括号的结尾放错了地方。

你这个不能算什么多态,而是php的魔术方法__Call ,当调用一个类中不存在的方法时,会调用这个方法。

把代码做了改写:

?php

header(“content-type:text/html;charset=utf-8”);

class C{

function __call($name,$num){

echo “方法的名称:”.$name.”br \”;

echo “方法参数的个数:”.count($num).”br \”;

if(count($num)==1){

echo $this-list1();

}

if (count($num)==2){

echo $this-list2();

}

}

public function list1(){

return “这是list1函数br \”;

}

public function list2(){

return “这是list2函数br \”;

}

}

$m=new C();

$m-list(1);

$m-list(1,2);

PHP重载 有什么用

用到的情况还是很多的 比方说 你在做底层开发时 经常会创建一些共有的 变量 就要加载这些数据 这是就得用这些函数了

php和c,c++的区别是什么?

的区别:

一个有protected成员变量(假设为i)的类型Base,他的子类Derived直接继承自Base,同时Derived有一个成员函数func,他的参数是Base类型的,这个函数可以访问Base对象的protecte的成员吗?在C++中不可以,而在PHP中可以。

关于重载:

PHP中不支持C++中的重载,重新定义个函数(不管是参数相同还是不同,都会导致重复定义错误)。PHP有自己的重载方法,而且比C++中的更广泛,他不仅可以重载函数(通过使用__call()方法),还可以重载成员变量(通过使用__get()和__set())。而C++中只能对函数进行重载,而且重载的方法只有:不同的参数类型,不同的函数修饰符(const)。

关于abstract和interface

PHP中有这两个修饰符,因为PHP不支持对一个普通类的多继承,因此interface用于实现多继承。Abstract类在C++中也存在,只是实现方式不一样,C++中使用pure virtual函数来表明这个类是抽象类,不能单独被实例化。而PHP中不仅可以使用函数的修饰符abstract(另外class前也必须标明abstract)来标明这个意思,也可以只使用abstract修饰符修饰class更直接的表明他是抽象类。另外, C++中的pure virtual函数不受访问类型的限制,不管是什么访问类型,都会被看作是public;而php中的abstract函数不能被声明成private,仅此而已。

多态

因为PHP是弱类型语言,所以他的多态性到处都有体现,导致他的多态性不像C++中那么明显。比如,在PHP中基类的函数可以看作全是virtual的,因此它不需要加任何修饰符,子类中和基类同名的函数都会被动态调用,而C++不一样,如果基类中的这个函数没有加virtual修饰符,子类中的那个同名函数就不会被动态调用,只能静态调用了。

操作符重载

PHP中不存在,而C++存在。重点在==操作符,在PHP中他可以运用在任何类型上,即使这个类型没有(像C++中一样)写自己的==重载函数。PHP中对于对象的比较,==表示两个对象的属性和值都一样,而且类型也一样;PHP也存在一个===操作符,表示他们引用了同一个对象,这跟java中很像吧。

final关键字

PHP中存在这个关键字,表示这个函数不能被重写(如果他用来修饰函数),或者类不能被继承(如果用类修饰class)。而C++中没有这个关键字,也无法模拟出那个效果。

对象赋值和拷贝

C++中的拷贝或者赋值大致有这三种方式。

一种是指针的赋值,即p1 = obj,相当于PHP和java中的赋值操作;

另一种是memberwise assignment,也就是在obj1 = obj2时发生的事情,默认情况下执行浅度拷贝,和PHP中clone的效果一样。他可以通过重载赋值拷贝操作来执行你的深度拷贝或者其他自定义的拷贝,这就相当于PHP中的__clone()成员函数;

第三种是memberwise initialization,也就是在参数传递时,传递返回值时或者包含对象的容器初始化的时候自动运行的,你可以通过自己定义拷贝构造函数来控制它的效果。

拷贝构造函数在PHP中几乎用不到,因为他的传递是完全按引用传递,而不是对象的直接拷贝。

PHP真的能算是面向对象的语言吗?

面向对象三大特性:封装,继承,多态

php可以封装对象,也可以继承,同样可以实现多态

多态是指指出重写和重载,php子类可以重写父类的方法,也可以通过方法的参数数量不同来重载方法,我觉得是面向对象语言

PHP重载到底是什么意思

针对不同参数形式写出的多个功能类似名字一样的函数。

比如

sort(int a,int b){}

sort(double c,double d,double f){}

这两个函数就是重载关系。表示了功能类似名字一样的两个函数,只是参数形式不一样

原创文章,作者:ZTDAN,如若转载,请注明出处:https://www.506064.com/n/330081.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
ZTDANZTDAN
上一篇 2025-01-14 18:56
下一篇 2025-01-14 18:56

相关推荐

  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • Python中capitalize函数的使用

    在Python的字符串操作中,capitalize函数常常被用到,这个函数可以使字符串中的第一个单词首字母大写,其余字母小写。在本文中,我们将从以下几个方面对capitalize函…

    编程 2025-04-29
  • Python中set函数的作用

    Python中set函数是一个有用的数据类型,可以被用于许多编程场景中。在这篇文章中,我们将学习Python中set函数的多个方面,从而深入了解这个函数在Python中的用途。 一…

    编程 2025-04-29
  • 单片机打印函数

    单片机打印是指通过串口或并口将一些数据打印到终端设备上。在单片机应用中,打印非常重要。正确的打印数据可以让我们知道单片机运行的状态,方便我们进行调试;错误的打印数据可以帮助我们快速…

    编程 2025-04-29
  • 三角函数用英语怎么说

    三角函数,即三角比函数,是指在一个锐角三角形中某一角的对边、邻边之比。在数学中,三角函数包括正弦、余弦、正切等,它们在数学、物理、工程和计算机等领域都得到了广泛的应用。 一、正弦函…

    编程 2025-04-29
  • Python3定义函数参数类型

    Python是一门动态类型语言,不需要在定义变量时显示的指定变量类型,但是Python3中提供了函数参数类型的声明功能,在函数定义时明确定义参数类型。在函数的形参后面加上冒号(:)…

    编程 2025-04-29
  • Python定义函数判断奇偶数

    本文将从多个方面详细阐述Python定义函数判断奇偶数的方法,并提供完整的代码示例。 一、初步了解Python函数 在介绍Python如何定义函数判断奇偶数之前,我们先来了解一下P…

    编程 2025-04-29
  • Python实现计算阶乘的函数

    本文将介绍如何使用Python定义函数fact(n),计算n的阶乘。 一、什么是阶乘 阶乘指从1乘到指定数之间所有整数的乘积。如:5! = 5 * 4 * 3 * 2 * 1 = …

    编程 2025-04-29
  • 分段函数Python

    本文将从以下几个方面详细阐述Python中的分段函数,包括函数基本定义、调用示例、图像绘制、函数优化和应用实例。 一、函数基本定义 分段函数又称为条件函数,指一条直线段或曲线段,由…

    编程 2025-04-29

发表回复

登录后才能评论