常量特点 常量一旦被定义就无法更改或撤销定义. 常量名不需要开头的$ 与变量不同,常量贯穿整个脚本是自动全局的. 作用域不影响对常量的访问 常量值只能是字符串或数字 设置 PHP 常量 如需设置常量,请使用 define(name, value) 函数,它有三个参数: - 首个参数定义常量的名称 - 第二个参数定义常量的值 - 可选的第三个参数规定常量名是否对大小写敏感.默认是大小写敏感:false. define("MYNAME", "白小明"); echo MY…
https://www.cnblogs.com/ccw869476711/p/9183783.html 一.魔术常量(魔术变量) 概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位置而变化. 1.__LINE__  获取文件中的当前行号. 2.__FILE__  获取文件的完整路径和文件名. 3.__DIR__   获取文件所在目录. 4.__FUNCTION__  获取函数名称(PHP 4.3.0 新加). 5.__CLASS__    获取类的名称(PHP 4.3.0 新…
一.魔术常量(魔术变量) 概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位置而变化. 1.__LINE__  获取文件中的当前行号. 2.__FILE__  获取文件的完整路径和文件名. 3.__DIR__   获取文件所在目录. 4.__FUNCTION__  获取函数名称(PHP 4.3.0 新加). 5.__CLASS__    获取类的名称(PHP 4.3.0 新加). 6.__METHOD__  获取类的方法名(PHP 5.0.0 新加). 7.__NAMESPA…
PHP的魔术常量(变量).魔术方法(函数).超全局变量 一.魔术常量(魔术变量) 概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位置而变化. 1.__LINE__  获取文件中的当前行号. 2.__FILE__  获取文件的完整路径和文件名. 3.__DIR__   获取文件所在目录. 4.__FUNCTION__  获取函数名称(PHP 4.3.0 新加). 5.__CLASS__    获取类的名称(PHP 4.3.0 新加). 6.__METHOD__  获取类的方法…
    在php中我们可以自定义常量,同时php中也自定义了一些好用的常量,这些常量会根据其所在的位置而自动变化. 我们称之为魔术常量.魔术常量可以大写也可以小写,是不区分大小写的     __FILE__                 当前文件路径 eg:E:\WWW\blog\app\Http\Controllers\StaticPagesController.php      __DIR__                  当前文件目录 eg:E:\WWW\blog\app\Http\…
<?php /** *魔术常量__CLASS__ __METHOD__ __FUNCTION__ __DIR__ __FILE__ */ //魔术常量:__CLASS__ 得到类名. /*class lantian{ function lt(){ return __CLASS__; } } $a=new lantian(); echo $a->lt();//输出:lantian*/ //魔术常量:__METHOD__ 得到类名+方法名 /*class lantian{ function lt(…
之前我们已经了解了一些常用的魔术方法,除了魔术方法外,PHP还提供一些魔术常量,相信大家在日常的工作中也都使用过,这里给大家做一个总结. 其实PHP还提供了很多常量但都依赖于各类扩展库,而有几个常量是通用并且是跟随它们所在代码的位置来提供一些与位置有关的信息,这些就是魔术常量.魔术常量是不分大小写的,__LINE__和__line__是一样的,但对于工程化的开发来说,常量还是尽量以大写为主. __LINE__ 文件中的当前行号. echo __LINE__ . PHP_EOL; // 3 fun…
1. 什么魔术常量 预定义常量:预定义常量就是PHP内置的常量,预先定义好的 PHP有很多预定义常量,比如:PHP_VERSION(版本号).PHP_OS(操作系统). 这些普通的预定义常量在程序中的值是固定的,不会因为在不同的位置而改变自身的值. 在PHP有八个特殊的预定义常量,它们的值会随着它们在代码中的位置改变而改变,我们称之为魔术常量. 2. PHP的8个魔术常量 序号 魔术常量 示例 描述 1 __LINE__ 5 返回魔术常量输出时所在的行号 2 __FILE__ E:\www\1.…
<?php /* * 本代码全部为测试函数代码,部分注释和写实例 * * 修改php.ini variables_order=”EGPCS” * 请注意$_REQUEST在优先级传参的时候会造成数据被覆盖,出现重大bug,建议不要使用 * * 请注意一下是重要的一些超全局参数并不是全部的 * * 软件全部都是编译安装,/usr/local/php * * * */ header("Content-type:text/html;charset=utf-8"); echo $_SER…
魔术方法(Magic methods) PHP中把以两个下划线__开头的方法称为魔术方法,这些方法在PHP中充当了举足轻重的作用. 魔术方法包括: __construct(),类的构造函数 __destruct(),类的析构函数 __call(),在对象中调用一个不可访问方法时调用 __callStatic(),用静态方式中调用一个不可访问方法时调用 __get(),获得一个类的成员变量时调用 __set(),设置一个类的成员变量时调用 __isset(),当对不可访问属性调用isset()或e…
看上去好像挺烦人,但只要通过例子测试一下,就明白了.不做测试,只是看,第二天还是不明白.当然我在抄其他人的日志,然后希望能是自己的理解就好,原文地址PHP的魔术方法和魔术敞亮简介和使用--LaraBot 魔术方法(Magic methods) In PHP, methods start with two "_"is called magic methods, these methods act as very important role, magic method includes:…
1.__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2.__destruct() 当删除一个对象或对象操作终止时被调用. 3.__call() 对象调用某个方法, 若方法存在,则直接调用: 若不存在,则会去调用__call函数. 4.__get() 读取一个对象的属性时, 若属性存在,则直接返回属性值: 若不存在,则会调用__get函数. 5.__set() 设置一个对象的属性时, 若属…
魔术函数 1.__construct()  实例化对象时被调用,  当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2.__destruct()  当删除一个对象或对象操作终止时被调用. 3.__call()  对象调用某个方法,  若方法存在,则直接调用:  若不存在,则会去调用__call函数. 4.__get()  读取一个对象的属性时,  若属性存在,则直接返回属性值:  若不存在,则会调用__get函数. 5.__set() …
魔术方法:PHP把类中所有以__(两个下划线)开头的方法当成魔术方法,一般建议用户不要将自定义的方法前面加上__作为前缀.魔术方法: 1. __construct() 类的默认构造方法,如果__construct()和与类同名的方法共同出现时,默认调用__construct()而不是同类名方法.一般情况下用户自定义构造方法也会使用__construct(). 2. __destruct()类的析构函数,当该对象的所有引用都被删除,或者对象被显式销毁时执行. 3. __get($name)可以简单…
PHP超全局变量 $_GET 通过get方式传递的值(通过 URL 参数传递给当前脚本的变量的数组.) $_POST 通过post形式传递的值(当 HTTP POST 请求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本.) $_COOKIE 获取客户端传递的COOKIE的值(通过 HTTP Cookies 方式传递给当前脚本的变量的数组) $_REQUEST…
一.魔术函数(13个) 1.__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2.__destruct() 当删除一个对象或对象操作终止时被调用. 3.__call() 对象调用某个方法, 若方法存在,则直接调用:若不存在,则会去调用__call函数. 4.__get() 读取一个对象的属性时,若属性存在,则直接返回属性值: 若不存在,则会调用__get函数. 5.__set() 设置一个…
魔术方法:PHP把类中所有以__(两个下划线)开头的方法当成魔术方法,一般建议用户不要将自定义的方法前面加上__作为前缀.魔术方法: 1. __construct() 类的默认构造方法,如果__construct()和与类同名的方法共同出现时,默认调用__construct()而不是同类名方法.一般情况下用户自定义构造方法也会使用__construct(). 2. __destruct()类的析构函数,当该对象的所有引用都被删除,或者对象被显式销毁时执行. 3. __get($name)可以简单…
一.魔术函数(13个) 1.__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2.__destruct() 当删除一个对象或对象操作终止时被调用. 3.__call() 对象调用某个方法, 若方法存在,则直接调用:若不存在,则会去调用__call函数. 4.__get() 读取一个对象的属性时,若属性存在,则直接返回属性值: 若不存在,则会调用__get函数. 5.__set() 设置一个…
一.魔术方法(13个)1.__construct()实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用.2.__destruct()当删除一个对象或对象操作终止时被调用.3.__call()对象调用某个方法, 若方法存在,则直接调用:若不存在,则会去调用__call函数.4.__get()读取一个对象的属性时,若属性存在,则直接返回属性值: 若不存在,则会调用__get函数.5.__set()设置一个对象的属性时, 若属…
0x00 魔术函数 1. __construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2. __destruct() 当删除一个对象或对象操作终止时被调用. 3. __call() 对象调用某个方法, 若方法存在,则直接调用: 若不存在,则会去调用__call函数. 4. __get() 读取一个对象的属性时, 若属性存在,则直接返回属性值: 若不存在,则会调用__get函数. 5. __set()…
魔术方法class A { const PI = 3.14; static $type = 'type1'; public $a1='a1'; public function fun1(){ var_dump('我是fun1'); } public $a2='a2'; protected function fun2(){ var_dump('我是fun1'); } public $a3='a3'; private function fun3(){ var_dump('我是fun1'); } fi…
PHP 向它运行的任何脚本提供了大量的预定义常量.不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 对于一些基本的常量是这些常量在 PHP 的内核中定义.它包含 PHP.Zend 引擎和 SAPI 模块,如: PHP_VERSION PHP_OS PHP_SAPI PHP_EOL 对于一些是通过加载扩展库才会出现,比如: DIRECTORY_SEPARATOR (string) PATH_SEPARATOR (string) 对…
常量 定义: 形式一 // define("PI",常量值); define("PI",3.14); define("school","讲理"); 形式二 // 定义形式二 const cc1 = 1234; const cc2 = "abcd"; 使用: 形式一 // 直接使用常量名 echo "PI的值:".PI; 形式二 // 通过constant函数,灵活性体现-->常量名…
普通常量  define('常量名',常量值): 以前说过:define定义的常量,全局有效 无论是页面内,函数内,类内,都可以访问. 例: define('ACC','Deny')    class Human{     static public function show(){                echo ACC;      } } Human::show();     //输出    Deny 能否定义 专门在类内发挥作用的常量 专门在类内发挥作用  说明 1.作用域在类内,…
魔术常量 由于其值在程序运行过程中不允许更改,所以是常量:其值,又是运行环境不同而不现,所以叫魔术. __DIR__            当前脚本文件的路径 示例: __LINE__            当前代码的行号 __FUNCTION__    当前函数的函数名 __METHOD__        表示方法名 __CLASS__            表示类名 示例:…
PHP 向它运行的任何脚本提供了大量的预定义常量.不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 有八个魔术常量它们的值随着它们在代码中的位置改变而改变.例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定.这些特殊的常量不区分大小写,如下: 几个 PHP 的“魔术常量” 名称 说明 __LINE__ 文件中的当前行号. __FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名.自 PHP…
魔术常量(Magic constants) PHP中的常量大部分都是不变的,但是有8个常量会随着他们所在代码位置的变化而变化,这8个常量被称为魔术常量. __LINE__,文件中的当前行号 __FILE__,文件的完整路径和文件名 __DIR__,文件所在的目录 __FUNCTION__,函数名称 __CLASS__,类的名称 __TRAIT__,Trait的名字 __METHOD__,类的方法名 __NAMESPACE__,当前命名空间的名称 这些魔术常量常常被用于获得当前环境信息或者记录日志…
Part1:实例 $_SERVER[PHP_SELF], $_SERVER[SCRIPT_NAME], $_SERVER['REQUEST_URI'] 在用法上是非常相似的,他们返回的都是与当前正在使用的页面地址有关的信息,这里列出一些相关的例子,帮助确定哪些是在你的脚本最适合的. if (isset($_SERVER['PHP_SELF'])) { define('PHP_SELF', $_SERVER['PHP_SELF']); } else { define('PHP_SELF', $_S…
PHP 向它运行的任何脚本提供了大量的预定义常量.不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了.有八个魔术常量它们的值随着它们在代码中的位置改变而改变.例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定.这些特殊的常量不区分大小写,如下: 几个 PHP 的“魔术常量” 名称 说明 __LINE__ 文件中的当前行号. __FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名.自 PHP 4…
义:用于存储一个不会变化也不希望变化的数据的标示符. 常量命名规则,同变量,但习惯说,常常将常量的名称使用“全大写”形式. 定义形式 使用define()函数定义 使用形式:define(“常量名”, 常量值): 推荐常用名使用全大写形 使用const语法定义 使用形式: const  常量名 = 常量值: 但const语法只能在“最顶层”的代码域中使用(不能在大括号中) 也即,const语法不能在函数中或条件语句中或其他表示一个“范围”的语句中使用 使用形式: (1)直接使用名字 (2)或使用…