• PHP中return的用法


    今天研究了一下CI框架的使用,注意到他的配置文件,采用一种写法。如下:

    /**
    * 注释若干
    * 以下是一个格式如config.php的文件
    */
    return array(
       'config1' => 'some value',
       'config2' => 'some value',
    );
    ?>

    在这个文件中,直接就写了一个return,这个用法又一次突破了我的常识。特意查询了一下文档,里面这样描述的:
    return
        If called from within a function, the return() statement immediately ends execution of the current function, and returns its argument as the value of the function call. return() will also end the execution of an eval() statement or script file.
        If called from the global scope, then execution of the current script file is ended. If the current script file was include()ed or require()ed, then control is passed back to the calling file. Furthermore, if the current script file was include()ed, then the value given to return() will be returned as the value of the include() call. If return() is called from within the main script file, then script execution ends. If the current script file was named by the auto_prepend_file or auto_append_file configuration options in php.ini, then that script file's execution is ended.
    return语句可以终止函数执行那自不必说了,这里还提到了可以终止eval过程的进行,并且如果处于被include的文件中,还能使return的值成为include和require函数的返回值。这样写的好处是,一个语句就可以得到配置项的内容了。

    //原来这样写
    require './config.php';
    function test() {
       global $config;
       if ($config['a']=='b') echo 'hello';
    }

    //现在
    function test() {
       $config = require('./config.php');
       if ($config['a']=='b') echo 'hello';
    }
    ?>

  • 相关阅读:
    spring+mybatis多数据源切换
    【linux环境下】RabbitMq的安装和监控插件安装
    Slurm远程登录Jupyter Notebook
    Google Colab 使用
    关于conda和jupyter使用
    关于给C盘扩容以及动态磁盘
    关于使用实验室服务器的GPU以及跑上TensorFlow代码
    一些更改的后端接口和代码
    MarkDown to PDF
    蜗牛慢慢爬 LeetCode 25. Reverse Nodes in k-Group [Difficulty: Hard]
  • 原文地址:https://www.cnblogs.com/see7di/p/2239758.html
Copyright © 2020-2023  润新知