Yii2中添加全局函数的方法分析


Posted in PHP onMay 04, 2017

本文实例讲述了Yii2中添加全局函数的方法。分享给大家供大家参考,具体如下:

方法一

这种方法就是直接在入口文件web/index.php里面写函数,示例代码如下:

// 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 文件里面添加如下代码:

"autoload": {
  "files": [
   "common/components/GlobalFunctions.php"
  ]
},

添加完之后记得用终端在项目根目录下执行 composer update 命令

然后我们的全局函数都可以写在 GlobalFunctions.php 文件里面,这个方法实现的话 IED 是会用代码提示的。

GetYii 有用到第二种方法,具体可以查看源码。

我更喜欢在已有命名空间对应的目录结构下加 helpers

有时候调用 helpers 显得方法太长了。

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
同台服务器使用缓存APC效率高于Memcached的演示代码
Feb 16 PHP
批量修改RAR文件注释的php代码
Nov 20 PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 PHP
深入PHP获取随机数字和字母的方法详解
Jun 06 PHP
php实现的一个很好用HTML解析器类可用于采集数据
Sep 23 PHP
浅谈PHP中的
Apr 23 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
PHP新特性详解之命名空间、性状与生成器
Jul 18 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
Aug 01 PHP
PHP编译configure时常见错误的总结
Aug 17 PHP
php多进程应用场景实例详解
Jul 22 PHP
Yii2表单事件之Ajax提交实现方法
May 04 #PHP
PHP经典实用正则表达式小结
May 04 #PHP
PHP实现的简单异常处理类示例
May 04 #PHP
PHP基于新浪IP库获取IP详细地址的方法
May 04 #PHP
PHP 无限级分类
May 04 #PHP
PHP实现中国公民身份证号码有效性验证示例代码
May 03 #PHP
PHP基于Redis消息队列实现发布微博的方法
May 03 #PHP
You might like
php获取系统变量方法小结
2015/05/29 PHP
总结对比php中的多种序列化
2016/08/28 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
PHP crypt()函数的用法讲解
2019/02/15 PHP
jquery中防刷IP流量软件影响统计的一点对策
2011/07/10 Javascript
jquery.fileEveryWhere.js 一个跨浏览器的file显示插件
2011/10/24 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
分享一些常用的jQuery动画事件和动画函数
2015/11/27 Javascript
Vue.js中数组变动的检测详解
2016/10/12 Javascript
Jquery树插件zTree实现菜单树
2017/01/24 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
vue中引用阿里字体图标的方法
2018/02/10 Javascript
JS实现查找数组中对象的属性值是否存在示例
2019/05/24 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
python学习之编写查询ip程序
2016/02/27 Python
Python实战小程序利用matplotlib模块画图代码分享
2017/12/09 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
2019/06/20 Python
PyTorch的深度学习入门教程之构建神经网络
2019/06/27 Python
django admin组件使用方法详解
2019/07/19 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
pytorch 实现查看网络中的参数
2020/01/06 Python
pytorch nn.Conv2d()中的padding以及输出大小方式
2020/01/10 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
postman和python mock测试过程图解
2020/02/22 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
2020/11/05 Python
python中pyplot基础图标函数整理
2020/11/10 Python
你应该知道的30个css选择器
2014/03/19 HTML / CSS
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
AHAVA美国官方网站:死海海泥护肤品牌
2016/10/18 全球购物
计算机学生的自我评价分享
2014/02/18 职场文书
手术室护士长竞聘书
2014/03/31 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
Python初学者必备的文件读写指南
2021/06/23 Python
Win11软件图标固定到任务栏
2022/04/19 数码科技