PHP语言结构
1、语言结构释义
语言结构就是PHP语言的关键词,语言语法的一部分;
它不可以被用户定义或者添加到语言扩展或者库中;
它可以有也可以没有变量和返回值。
2、为什么语言结构执行速度比函数快?
函数要先被解析成php解析器(Zend引擎)分解成语言结构。所以,函数比语言结构多了一层解析器、速度就想对慢了。
3、PHP中的语言结构有哪些?
echo
print
die() /exit()
isset()
unset()
include()
include_once()
require()
require_once()
array()
list()
empty()
....
4、怎样判断是语言结构还是函数?
使用function_exists函数进行判断:
<?php
function check($name){if(function_exists($name)){echo $name.'为函数';}else{echo $name.'为语言结构';}
}
$name = 'explode';
check($name);
5、语言结构与函数的区别
1.语言结构比对应功能的函数快
2.语言结构在错误处理上比较粗糙,由于是语言关键词,所以不具备再处理的环节
3.语言结构不能在配置项(php.ini)中禁用,函数则可以。
4.语言结构不能被用做回调函数
6、php中怎样禁用函数?
在PHP配置文件php.ini中查找 disable_functions =
在等于后添加函数名,多个函数名用英文逗号,
分割 。
比如:
disable_functions = exec,passthru,popen,proc_open,shell_exec,system,chgrp,chmod,chown
7、注意
关键字在 PHP 中有着特殊的意义。它们中有些像是函数,有些像是常量……但是它们不是的,它们只是语言结构的一部分。不能使用它们的任何一个作为常量、方法名或是类名。但是可以将它们作为变量名使用,不过这样会导致混淆。
从PHP7.0.0开始这些关键字允许被用作类的属性、常量以及类的方法名,或者接口名和traints名,除了class不能被用作常量名。