PHP构造函数是对象创建后第一个手动调用的方法,析构函数是对象释放前最后一个手动调用的方法。 本文向您介绍 PHP 构造函数和析构函数。
PHP构造函数
1、它是对象创建后“第一个”、“自动调用”的方法。
2.构造方法的定义,方法名称是固定的,
php4中:与类名相同的是构造方法
在 php5 中:构造函数选择使用魔术 __construct()。 该名称用于声明所有类中的构造函数。
优点:改变类名时php 析构函数,构造方法不需要改变
魔术:当类中写入魔术时,就会添加该方法对应的功能
方法名称是固定的(都是系统提供的),没有自定义
每个魔术都是在不同时间手动调用完成某个功能的方法
不同的魔法技巧有不同的召唤时间
它们都以 __ 开头
__构造(); __destruct(); __放();......
功能:初始化成员属性;
PHP 析构函数
1、对象释放前最后一次“自动”调用
使用垃圾收集器(java php),而c++自动释放
功能:关闭一些资源,做一些清理工作
__destruct();
PHP 构造函数和析构函数示例
类 Person{ var $name; var $年龄; var $性别; //php4中的构造方法/*function Person() { //echo "1111111111111111"; }*/ //php5中的构造方法 function __construct($name,$age,$sex){ $this->name=$name; $这个->年龄=$年龄; $这->性别=$性别; } function say(){ //$this->name;//对象中成员的访问使用$this echo "我的名字:{$this->name},我的年龄:{$this->age}
" } function run(){ } function eat(){ } //销毁方法 function __destruct(){ } } $p1=new Person("zhangsan",25,"male"); $p2=new Person; $ p3 =新人;
2.$_GET
$_GET 超全局包含有关使用 GET 方法传递的参数的信息。 如果请求的URL是[url]/index.html?cat=apache&id=157[/url],则可以使用$_GET超级全局变量来访问以下变量:
$_GET['cat'] = "apache";
$_GET['id'] = "157";
默认情况下,$_GET 超全局变量是访问通过 GET 传递的变量的唯一方法。
3.$_POST
$_POST 超全局包含有关 POST 传递的参数的信息。
复制代码代码如下:
通过脚本 subscribe.php,您可以使用以下 POST 变量:
$_POST['email'] = " jason@example.com ";
$_POST['pswd'] = "雨天";
$_POST['订阅'] = "订阅!";
与 $_GET 一样,默认情况下 $_POST 超全局是访问 POST 变量的唯一方法。
4.$_COOKIE
$_COOKIE 超全局存储通过 HTTP cookie 传递给脚本的信息。 这些 cookie 通常由 PHP 脚本执行后的 PHP 函数 setcookie() 设置。 例如,假设使用 setcookie() 存储名为 example.com 且值为 ab2213 的 cookie。 稍后可以通过调用 $_COOKIE['example.com'] 获取该值。
5.$_FILES
$_FILES 超全局包含有关通过 POST 上传到服务器的数据的信息。 这个超级全局变量与其他变量不同,它是一个包含5个元素的二维数组。 第一个下标标识表单的文件上传元素名称; 第二个下标是五个预定义下标之一,用于描述上传文件的某个属性:
$_FILES['上传名称']['名称']; 客户端上传到服务器的文件的文件名;
$_FILES['上传名称']['类型']; 上传文件的 MIME 类型。 该变量是否为形式参数取决于浏览器的功能。
$_FILES['上传名称']['大小']; 上传文件的大小(以字节为单位);
$_FILES['上传名称']['tmp_name']; 上传后,在将其移动到最终位置之前分配给该文件的临时名称。
$_FILES['上传名称']['错误']; 上传状态码。 尽管这个变量被命名为错误,但实际上它是在成功时填充的。 它有五个可能的值:
UPLOAD_ERR_OK 文件上传成功
UPLOAD_ERR_INI_SIZE 文件大小超过了 upload_max_filesize 指令指定的最大值。
UPLOAD_ERR_FORM_SIZE 文件大小超过 MAX_FILE_SIZE 隐藏表单字段参数(可选)指定的最大值。
UPLOAD_ERR_PARTIAL 仅上传了部分文件
UPLOAD_ERR_NO_FILE 上传表单中未指定文件
6.$_ENV
$_ENV 超级全局变量提供有关 PHP 解析的服务器环境的信息。 该字段中的变量包括:
$_ENV['HOSTNAME'] 服务器的主机名
$_ENV['SHELL'] 系统外壳
7.$_请求
$_REQUEST 超级全局是一个多面手,它记录通过各种方式传递给脚本的变量,特别是 GET、POST 和 COOKIE。 这些变量的顺序并不取决于它们在发送脚本中出现的顺序,而是取决于variables_order配置指令指定的顺序。 建议谨慎使用这个超级变量,因为它不够安全。
8.$_会话
$_SESSION 超全局包含与所有会话相关的信息。 注册会话信息使您可以方便地在整个网站上引用这些会话信息,而无需通过 GET 或 POST 显式传递数据。
9.$全局变量
$GLOBALS超级全局变量链表可以认为是超级全局变量的超集php 析构函数,包括全局范围内的所有变量。 执行下面的代码可以查看$GLOBALS中的所有变量。
复制代码代码如下:
打印 '
';print_r ($GLOBALS);
print '
';