好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php中构造方法的特点 php的构造函数是

很多站长朋友们都不太清楚php中构造方法的特点,今天小编就来给大家整理php中构造方法的特点,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 PHP构造方法到底有什么用 2、 PHP类的构造方法 3、 PHP中构造函数与自定义函数区别 4、 PHP构造方法和析构方法 5、 PHP构造函数的特点? PHP构造方法到底有什么用

构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。

对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。

当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。

PHP类的构造方法

构造方法是类中的一个特殊方法。当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须是 __construct() 。所以通常用它执行一些有用的初始化任务。该方法无返回值。

如果子类中定义了构造函数则不会暗中调用其父类的构造函数。要执行父类的构造函数,需要在子类的构造函数中调用 parent::__construct()。

与构造方法对应的就是析构方法,析构方法会在某个对象的所有引用都被删除或者当对象被显式销毁之前执行的一些操作或者功能。析构函数不能带有任何参数,其名称必须是 __destruct() 。

同样,如果子类中定义了析构函数则不会暗中调用其父类的析构函数。要执行父类的析构函数,需要在子类的析构函数中调用 parent::__destruct()。

注意:在析构函数中抛出一个异常会导致致命错误。

<?php

class Construct{

protected $a;

protected $b;

function __construct($a,$b){ //定义构造函数

$this->a=$a;

$this->b=$b;

}

function __destruct(){ //重新定义为初始值

$result=0;

echo '恢复乘积的初始值:'.$result;

}

}

class son extends construct{

private $c;

function __construct($c){

parent::__construct(6,10); //调用父类的构造方法,使用方法:parent::__construct(); 有参数加参数

$this->c=$c;

}

function show(){

$result=$this->a*$this->b*$this->c;

print 'abc的乘积是:'.$result.' ';

}

function __destruct(){

parent::__destruct(); //调用父类的析构函数,使用方式:parent::__destruct();

}

}

$test=new son(12); //实例化对象

$test->show(); //abc的乘积是:720 恢复乘积的初始值:0

?>

PHP中构造函数与自定义函数区别

构造方法:用户创建对象时,系统自动调用的方法;

功能:初始化类中必备数据的;

PHP5实现方法:

1)方法名和类名相同的方法

2)PHP中设置的魔术方法(用户执行了某种操作后,系统自动调用的方法):

__construct();

注意:1】如果没有定义构造方法,那么系统会自动的创建一个空魔术构造方法;

2】如果PHP4中的构造方法和PHP5中的构造方法,同时存在,那么PHP5中的构造方法优先使用;普通的成员方法和构造方法的区别和联系:

1】普通的方法如果定义的名字和类名相同,那么就变成构造方法

2】如果构造方法中有参数,那么参数列表要和创建对象时,类名后的小括号参数类表完全一样;

3】普通的方法主要是为了完成某个功能,而构造方法主要是初始化数据

4】普通的方法的可以有返回值,但是构造方法从语法上可以有返回值,但是从意义上不能有返回值;

PHP构造方法和析构方法

什么是构造方法

构造方法是类的一种特殊的方法,它的主要作用是完成对新对象初始化.

特点:

1. 没有返回值.

2. 在创建一个新的对象时,系统会自动调用该类的构造方法完成对新对角的初始化.

语法:

php5: 修饰符 function __construct()

{

//code

}

php4: 修饰符 function 类名()

{

//code

}

注意:

1. php5里对两者都支持,如果两种构造方法同时存在的话,优先选择第一种.

2. 一个类里面默认有一个不带参数为空的构造方法,一旦自定义了一个构造方法,就会覆盖默认的构造方法.

所以说一个类有且只有一个构造方法.

3.一个类只能有一个构造方法.(不能重载)

4.构造方法默认的访问修饰符为public.

二.this关键字

this代表当前对象.可以理解为:谁调用它,它就代表谁.

注意事项:

this不在类定义的使用,只能在类定义的方法中使用.

三.实例

复制代码 代码如下:

<?php

header("Conter-Type:text/html;charset=utf-8");

class Person

{

public $name; //成员变量

public $age;

// function __construct()

//{

// echo "不带参数的构造方法";

//}

function __construct($name,$age)

{

$this -> name = $name;

$this -> age = $age;

echo "带参数的构造方法"."<br />";

}

//成员方法

function view()

{

//this的引用.

echo "姓名:".$this ->name.", 年龄:".$this ->age;

}

}

//new一个新的对象

//$p = new Person();

$p2 = new Person("李四",13);

$p2 ->view();

?>

结果如下:

带参数的构造方法

复制代码 代码如下:

<SPAN style="WIDOWS: 2; TEXT-TRANSFORM: none; TEXT-INDENT: 0px; FONT: 14px 微软雅黑; WHITE-SPACE: normal; ORPHANS: 2; LETTER-SPACING: normal; COLOR: #ff00ff; WORD-SPACING: 0px" color="#ff00ff"> 姓名:李四, 年龄:13</SPAN>

四:析构方法:

析构方法是PHP5引入的新概念.主要作用:释放资源(比如:释放数据库链接,图片资源...).

语法:

function __destruct(){}

特点:

1.析构方法没有返回值.

2.主要作用是释放资源.并不是销毁对象本身.

3.在销毁对象前,系统自动调用该类的析构方法.

4.一个类最多只有一个析构方法.

五:例子:

复制代码 代码如下:

<?php

header("Conter-Type:text/html;charset=utf-8");

class Person

{

public $name;

public $age;

//构造方法

function __construct($name,$age)

{

$this ->name = $name;

$this ->age = $age;

}

//析构方法

function __destruct()

{

echo "姓名:".$this->name.", 年龄".$this->age."-->销毁<br />";

}

}

$p1= new Person("小一",18);

$p2= new Person("小二",17);

?>

结果:

姓名:小二, 年龄17-->销毁

姓名:小一, 年龄18-->销毁

分析结论:

1.析构方法会自动调用.

2.析构方法调用的顺序是先创建的对象后被销毁.

3.当一个对象没有引用,被垃圾回收机制确认为垃圾时,调用析构方法.

PHP构造函数的特点?

在你new class的时候,执行构造函数,可以给类属性赋值,也可以注入依赖。

关于php中构造方法的特点的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php中构造方法的特点 php的构造函数是的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did195963
更新时间:2023-04-26   阅读:23次

上一篇: phppackv的简单介绍

下一篇:php去掉年月日 php输出年月日时分秒

相关资讯

最新资料更新

  • 1.php获取监控视频 php采集视频地址
  • 2.关于PHPchmod的信息
  • 3.接口的继承php 接口的继承和实现
  • 4.php怎么开发xml php处理xml数据
  • 5.php数组键名排序 php数组值排序
  • 6.php获取阴历 php获取日期
  • 7.php版本怎么更新 php版本升级
  • 8.php如何页面静态化 php实现页面静态化
  • 9.仿win桌面php源码 仿windows桌面
  • 10.怎么改变php版本 php版本可以随便更换吗
  • 11.php蓝色的代码 html颜色代码
  • 12.PHP版本在哪调 phpversion
  • 13.php河内塔问题 河内塔算法
  • 14.php界面怎么设置 php界面设计
  • 15.jq读取php变量 php读取html内容
  • 16.php队列和缓存 php中的九大缓存技术
  • 17.php语言怎么玩 php语言入门
  • 18.php数据导出csv php导出大量数据
  • 19.php的项目开发 php项目开发案例整合
  • 20.铜仁php招聘信息 铜仁工作招聘信息

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://www.haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]