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 相关文章推荐
Smarty安装配置方法
Apr 10 PHP
PHP 5.3.0 安装分析心得
Aug 07 PHP
PHP Undefined index报错的修复方法
Jul 17 PHP
php _autoload自动加载类与机制分析
Feb 10 PHP
浅谈PHP变量作用域以及地址引用问题
Dec 27 PHP
解决CodeIgniter伪静态失效
Jun 09 PHP
PHP队列用法实例
Nov 05 PHP
php通过array_merge()函数合并两个数组的方法
Mar 18 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
PHP如何读取由JavaScript设置的Cookie
Mar 22 PHP
Yii实现微信公众号场景二维码的方法实例
Aug 30 PHP
PHP sdk实现在线打包代码示例
Dec 09 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文件打开、关闭、写入的判断与执行代码
2011/05/24 PHP
Laravel框架使用Redis的方法详解
2018/05/30 PHP
javascript批量修改文件编码格式的方法
2015/01/27 Javascript
jQuery晃动层特效实现方法
2015/03/09 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
JS+CSS实现仿触屏手机拨号盘界面及功能模拟完整实例
2015/05/16 Javascript
三种AngularJS中获取数据源的方式
2016/02/02 Javascript
微信小程序开发之map地图实现教程
2017/06/08 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
React-Router如何进行页面权限管理的方法
2017/12/06 Javascript
webstorm中vue语法的支持详解
2018/05/09 Javascript
node基于puppeteer模拟登录抓取页面的实现
2018/05/09 Javascript
JavaScript遍历查找数组中最大值与最小值的方法示例
2019/05/24 Javascript
js实现for循环跳过undefined值示例
2019/07/02 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
npm qs模块使用详解
2020/02/07 Javascript
JavaScript前端开发时数值运算的小技巧
2020/07/28 Javascript
Vue 数据响应式相关总结
2021/01/28 Vue.js
深入讨论Python函数的参数的默认值所引发的问题的原因
2015/03/30 Python
Python 实现购物商城,含有用户入口和商家入口的示例
2017/09/15 Python
windows下python安装pip图文教程
2018/05/25 Python
pandas 对series和dataframe进行排序的实例
2018/06/09 Python
记一次python 内存泄漏问题及解决过程
2018/11/29 Python
Python网页正文转换语音文件的操作方法
2018/12/09 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
python 字符串格式化的示例
2020/09/21 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
Python爬虫之Selenium设置元素等待的方法
2020/12/04 Python
美国渔具店:FishUSA
2019/08/07 全球购物
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
保护黄河倡议书
2014/05/16 职场文书
师德模范事迹材料
2014/06/03 职场文书
学习焦裕禄同志为人民服务思想汇报
2014/09/10 职场文书
关于五一放假的通知
2015/08/18 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
微信小程序实现录音Record功能
2021/05/09 Javascript