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 相关文章推荐
PHP 字符串 小常识
Jun 05 PHP
PHP 根据IP地址控制访问的代码
Apr 22 PHP
PHP函数strip_tags的一个bug浅析
May 22 PHP
php实现的Cookies操作类实例
Sep 24 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
PHP验证码生成原理和实现
Jan 24 PHP
详谈PHP程序Laravel 5框架的优化技巧
Jul 18 PHP
PHP中session跨子域的三种实现方法
Jul 25 PHP
php 基础函数
Feb 10 PHP
ThinkPHP框架实现数据增删改
May 07 PHP
使用WAMP搭建PHP本地开发环境
May 10 PHP
Laravel中Facade的加载过程与原理详解
Sep 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简单开启curl的方法(测试可行)
2016/01/11 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
跨浏览器的设置innerHTML方法
2006/09/18 Javascript
JavaScript 克隆数组最简单的方法
2009/02/12 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
2013/07/08 Javascript
Javascript中查找不以XX字符结尾的单词示例代码
2013/10/15 Javascript
JS实现点击颜色块切换指定区域背景颜色的方法
2015/02/25 Javascript
javascript实现获取浏览器版本、浏览器类型
2015/12/02 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
jQuery元素选择器实例代码
2017/02/06 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
AngularJS使用ng-repeat遍历二维数组元素的方法详解
2017/11/11 Javascript
200行代码实现blockchain 区块链实例详解
2018/03/14 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
vuex实现购物车的增加减少移除
2020/06/28 Javascript
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
Python单例模式实例分析
2015/01/14 Python
Python提取网页中超链接的方法
2016/09/18 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
hmac模块生成加入了密钥的消息摘要详解
2018/01/11 Python
Python多层装饰器用法实例分析
2018/02/09 Python
使用Python和xlwt向Excel文件中写入中文的实例
2018/04/21 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
Pytorch基本变量类型FloatTensor与Variable用法
2020/01/08 Python
django 多数据库及分库实现方式
2020/04/01 Python
numpy矩阵数值太多不能全部显示的解决
2020/05/14 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
Love, Bonito国际官网:新加坡女装品牌
2021/03/13 全球购物
大学四年规划书范文
2013/12/27 职场文书
写自荐信三大法宝
2014/01/24 职场文书
社团活动总结怎么写
2014/06/30 职场文书
四风查摆剖析材料
2014/10/10 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
Mysql索引失效 数据库表中有索引还是查询很慢
2022/05/15 MySQL