zoukankan      html  css  js  c++  java
  • php:语言结构和函数的区别

    前言
    这次我们要讲的是语言结构和函数的区别,我相信对于大多数php初学者来说很难注意到这些区别。

    因为要实现一个功能,我们可以找到很多种方法来实现它,但是怎么选择,怎么找出最高效的方法才是关键,同样的功能,但是不同样的代码,执行效率却不一样,除了在尽可能减少时间和空间复杂度少的算法上,我们还可以避免选择一些函数,尽量选择语言结构来处理,进而提高代码的质量。

    知识点很简单,但是很实用。

    一、 什么是语言结构和函数 ?
    语言结构:就是PHP语言的关键词,语言语法的一部分;它不可以被用户定义或者添加到语言扩展或者库中;它可以有也可以没有变量和返回值。

    函数:由代码块组成的,可以复用。从源码的角度来说,也就是基于Zend引擎的基础来实现的,ext拓展库中的函数都是这样实现的。

     
    二、语言结构为什么比函数执行效率高?
    因为函数在执行的时候都要先被PHP解析器分解成语言结构,然后在执行语言结构。由此可见,函数比语言结构多了一层解析器解析,相当于函数是在语言结构外包装了一层。所以语言结构比函数要效率高。

    三、php语言结构有哪些?
    echo、print、die、isset、unset、include、require、array、list、empty 等。

    注: include_once()、require_once()是函数.

    四、怎么判断是语言结构还是函数 ?
    <?php

    function check($name){
    if(function_exists($name)){
    echo $name.'为函数';
    }else{
    echo $name.'为语言结构';
    }
    }

    check("isset");//输出isset为语言结构
    check("array_push");//输出array_push为函数
     

    小结:
    语言结构不可再php.ini中禁用、函数可以禁用。
    php.ini中查找 disable_functions =
    在=后添加函数名,多个函数名用,分割
    例如:disable_functions = exec,shell_exec

    最后还是希望大家尽量使用语言结构,避免使用函数。
    ————————————————
    版权声明:本文为CSDN博主「蝶开三月」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/panjiapengfly/article/details/102746061

  • 相关阅读:
    android之PackageManager简单介绍
    OUI-67076 : OracleHomeInventory was not able to create a lock file&quot; in Unix
    编程之美2013 初赛一 A
    Unity3D之挥动武器产生的剑痕特效
    怎样在万网加入Lync Online SRV记录
    mysql-定时调用存储过程
    在TextView中加入图片
    shell语法简单介绍
    quick-cocos2d-x android返回键监听并实现原生退出对话框
    秒杀多线程第四篇 一个经典的多线程同步问题
  • 原文地址:https://www.cnblogs.com/wpxuexi/p/14724711.html
Copyright © 2011-2022 走看看