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

更新日期: 2018-12-17阅读: 2.1k标签: 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()    实例化一个对象时,如果对应的类不存在,则该方法被调用。


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

PHP 是 Web 开发最好的语言!

PHP 一直受到全球 Web开发人员的青睐,它为人们提供了创建高度交互性和直观的网站和Web应用程序的良好方式,包括语言的广度、深度,且执行简单。以下五个原因,我们来说明PHP是世界 Web开发的最佳语言

PHP中常用加解密方式

PHP中使用OpenSSL生成RSA公钥私钥及进行加密解密示例(非对称加密),php服务端与客户端交互、提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密

在PHP7中不要做的 10 件事

PHP7中不要做的 10 件事: 不要使用 mysql_ 函数、不要编写垃圾代码、不要在文件末尾使用 PHP 闭合标签、 不要做不必要的引用传递、不要在循环中执行查询、不要在 SQL 查询中使用 *

PHP如何打造一个高可用高性能的网站呢?

PHP如何打造一个高可用高性能的网站呢?我们来分析分析高性能高可用的系统。简而言之,采用分布式系统,分布式应用和服务,分布式数据和存储,分布式静态资源,分布式计算,分布式配置和分布式锁。负载均衡,故障转移,实现高并发。

php获取客户端ip地址或者服务器ip地址

在PHP获取客户端IP时,常使用REMOTE_ADDR,但如果客户端是使用代理服务器来访问,那取到的是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实 IP 地址,就要使用HTTP_X_FORWARDED_FOR

PHP代码_PHP整洁之道

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

php 守护进程

首先需要解释的是什么是守护进程。守护进程就是在后台一直运行的进程。比如我们启动的httpd,mysqld等进程都是常驻内存内运行的程序。

解决PHP剪切缩略图生成png,gif透明图时,黑色背景问题

后台上传png图片透明底变成黑色的问题,php缩放gif和png图透明背景变成黑色的解决方法,本文讲的是php缩放gif和png图透明背景变成黑色的解决方法, 工作中需要缩放一些gif图然后在去Imagecopymerge

PHP的高效编程

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

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

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

点击更多...

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