本文实例讲述了Yii2中添加全局函数的方法。分享给大家供大家参考,具体如下:
方法一
这种方法就是直接在入口文件web/index.php里面写函数,示例代码如下:
1
2
3
4
5
6
7
8
9
|
// something code …… // 全局函数 function pr( $var ) { $template = php_sapi_name() !== 'cli' ? '<pre>%s</pre>' : "\n%s\n" ; printf( $template , print_r( $var , true)); exit ; } ( new yii\web\Application( $config ))->run(); |
这个方法虽然可以实现,但是本人不推荐,因为改了框架本身的代码,而且如果全局函数多了的话,也不好管理。
方法二(推荐)
这种方法主要是利用 composer 来实现,在 composer.json 文件里面添加如下代码:
1
2
3
4
5
|
"autoload" : { "files" : [ "common/components/GlobalFunctions.php" ] }, |
添加完之后记得用终端在项目根目录下执行 composer update
命令
然后我们的全局函数都可以写在 GlobalFunctions.php 文件里面,这个方法实现的话 IED 是会用代码提示的。
GetYii 有用到第二种方法,具体可以查看源码。
我更喜欢在已有命名空间对应的目录结构下加 helpers
有时候调用 helpers 显得方法太长了。
希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。