加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_运城站长网 (https://www.0359zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中函数和语言结构的区别

发布时间:2022-09-30 11:36:58 所属栏目:PHP教程 来源:
导读:  关于PHP中的函数和语言结构的区别,本文一点PHP博主给大伙逐步分析。函数众所周知它的三要素为:函数名、参数、返回值,调用方式采用函数名加括号()的形式进行调用。语言结构可以理解成是PHP中的保留关键字中的一
  关于PHP中的函数和语言结构的区别,本文一点PHP博主给大伙逐步分析。函数众所周知它的三要素为:函数名、参数、返回值,调用方式采用函数名加括号()的形式进行调用。语言结构可以理解成是PHP中的保留关键字中的一部分,例如for、foreach、isset,这些均为语言结构。
 
  语言结构和函数它们在性能,语言结构会快一些,例如鸟哥曾说过的isset和is_null的区别,isset是语言结构而is_null则是函数PHP函数,在代码运行解析isset语句的的时候例如:
 
  php explode 函数_php中文字符串截取函数_PHP函数
 
  isset($var)这个指令, 会被分析成一条Opcode:ZEND_ISSET_ISEMPTY_VARS.
  而is_null作为函数可以这样使用:
 
 
 
  $var = NULL;
 
  $func = "is_null";
 
  $func($var);
 
  ?>
  在鸟哥一千万的运行测试中表明isset会比is_null快上一个档次。
 
  所以能用语言结构解决的需求,尽量选择语言结构,我们可以通过以下方法判断是语言结构还是函数:
 
   //var_dump出来的bool值,为true是函数,为false是语言结构
   var_dump(function_exists('echo')); //false
   var_dump(function_exists('print')); //false
   var_dump(function_exists('for')); //false
   var_dump(function_exists('foreach')); //false
   var_dump(function_exists('array')); //false
   var_dump(function_exists('eval')); //false
   var_dump(function_exists('list')); //false
   var_dump(function_exists('sort')); //true
   var_dump(function_exists('substr')); //true
   var_dump(function_exists('session_start')); //true
   var_dump(function_exists('var_dump')); //true
   var_dump(function_exists('ord')); //true
 

(编辑:开发网_运城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!