PHP超级全局变量、魔术变量和魔术函数

更新日期: 2018-12-17阅读量: 1332标签: php

php超级全局变量(9个)

$GLOBALS  储存全局作用域中的变量

$_SERVER  获取服务器相关信息

$_REQUEST  获取POST和GET请求的参数

$_POST  获取表单的POST请求参数

$_GET  获取表单的GET请求参数

$_FILES  获取上传文件的的变量

$_ENV  获取服务器端环境变量的数组

$_COOKIE    浏览器cookie的操作

设置cookie:setcookie(name, value, expire, path, domain);
获取cookie:$_COOKIE["user"];
删除cookie:setcookie("user", "", time()-3600);//设置过期时间

$_SESSION  服务端session的操作

使用session前一定要session_start()启动session
储存session:$_SESSION["name"]="King";//数组操作
销毁session:unset($_SESSION["name"]);//销毁一个
session_destroy()和unset($_SESSION);//销毁所有的session

 

php魔术变量(8个)

__LINE__  文件中的当前行号。

__FILE__  文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。

__DIR__  文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。

__FUNCTION__  常量返回该函数被定义时的名字

__CLASS__  常量返回该类被定义时的名字(区分大小写)。

__METHOD__  类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。

__NAMESPACE__  当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0 新增)。

 

PHP魔术函数(13个)

__construct()   实例化对象时被调用,当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。

__destruct()    当删除一个对象或对象操作终止时被调用。

__call()      对象调用某个方法,若方法存在,则直接调用;若不存在,则会去调用__call函数。

__get()       读取一个对象的属性时,若属性存在,则直接返回属性值;若不存在,则会调用__get函数。

__set()        设置一个对象的属性时,若属性存在,则直接赋值;若不存在,则会调用__set函数。

__toString()    打印一个对象的时被调用。如echo $obj;或print $obj;

__clone()       克隆对象时被调用。如:$t=new Test();$t1=clone $t;

__sleep()       serialize之前被调用。若对象比较大,想删减一点东东再序列化,可考虑一下此函数。

__wakeup()     unserialize时被调用,做些对象的初始化工作。

__isset()       检测一个对象的属性是否存在时被调用。如:isset($c->name)。

__unset()    unset一个对象的属性时被调用。如:unset($c->name)。

__set_state()  调用var_export时,被调用。用__set_state的返回值做为var_export的返回值。

__autoload()    实例化一个对象时,如果对应的类不存在,则该方法被调用。


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: https://www.fly63.com/article/detial/1632

PHP代码_PHP整洁之道

摘录自 Robert C. Martin的Clean Code 书中的软件工程师的原则 ,适用于PHP。 这不是风格指南。 这是一个关于开发可读、可复用并且可重构的PHP软件指南。并不是这里所有的原则都得遵循,甚至很少的能被普遍接受。 这些虽然只是指导,但是都是Clean Code作者多年总结出来的。

5分钟理解依赖注入和控制反转

很多人不理解依赖注入和控制反转主要是不熟悉适用场景,其实在很多框架中我们说用到了 IoC 和 DI,实际上都是一回事,他实际上就是我们设计模式的一种:门面模式,也称外观模式。实际上,在去理解 依赖注入 和 控制反转 时,我们需要有两个概念。

php中Url几个常用的函数

parse_url()本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分。本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分。

在 PHP 7 中不要做的 10 件事

这一天终于来了,从此你不仅仅不应该使用mysql_函数。PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的mysqli_函数,或者更灵活的 PDO 实现。

php面向对象中static静态属性和静态方法的调用

关于它们的调用,需要弄明白了他们在内存中存放位置,这样就非常容易理解了。静态属性、方法(包括静态与非静态)在内存中,只有一个位置(而非静态属性,有多少实例化对象,就有多少个属性)。

开发者值得关注的9大流行PHP框架

数十年来,PHP一直是全球最受欢迎的编程语言之一。PHP开发具有快速安全、易于维护、大量可用软件库、以及更少的手动编程量等特点。如今,PHP在网站中的使用量已高达79%。

php 定时任务

google百度了下,PHP任务大体上可以分为三类,最近需要去定时请求数据,然后分析之后 指定相应的文本 通过socket广播给用户。具体的分析 制定文本的业务 不复杂。 使用curl 请求数据 。但是对于定时任务这一块怎么使用都不行。

PHP多进程引发的msyql连接数问题

业务中有一块采用了PHP的pcntl_fork多进程,希望能提高效率,但是在执行的时候数据库报错,MySQL能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。

php类之clone 克隆

在php5中,对象的传递方式默认为引用传递,如果我们想要在内存中生成两个一样的对象或者创建一个对象的副本,这时可以使用克隆,对象的复制是通过关键字 clone 来实现的。用 clone 克隆出来的对象与原对象没有任何关系,它是把原来的对象从当前的位置重新复制了一份

PHP的高效编程

如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!