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中$_REQUEST、$_POST、$_GET的区别和联系小结
Nov 23 PHP
浅析关于PHP位运算的简单权限设计
Jun 30 PHP
非常实用的php弹出错误警告函数扩展性强
Jan 17 PHP
3个PHP多维数组转为一维数组的方法实例
Mar 13 PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 PHP
php 使用file_get_contents读取大文件的方法
Nov 13 PHP
简单实用的PHP防注入类实例
Dec 05 PHP
WordPress中制作导航菜单的PHP核心方法讲解
Dec 11 PHP
php微信开发之批量生成带参数的二维码
Jun 26 PHP
php阳历转农历优化版
Aug 08 PHP
php实现用户注册密码的crypt加密
Jun 08 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
Oct 14 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
延长phpmyadmin登录时间的方法
2011/02/06 PHP
php方法调用模式与函数调用模式简例
2011/09/20 PHP
PHP合并两个数组的两种方式的异同
2012/09/14 PHP
yii2中结合gridview如何使用modal弹窗实例代码详解
2016/06/12 PHP
PHP实现一个简单url路由功能实例
2016/11/05 PHP
PHP解密支付宝小程序的加密数据、手机号的示例代码
2021/02/26 PHP
认识延迟时间为0的setTimeout
2008/05/16 Javascript
jquery获得keycode的示例代码
2013/12/30 Javascript
Javascript中的apply()方法浅析
2015/03/15 Javascript
解析javascript中鼠标滚轮事件
2015/05/26 Javascript
Sublime Text 3常用插件及安装方法
2015/12/16 Javascript
JavaScript电子时钟倒计时第二款
2016/01/10 Javascript
jQuery实现磁力图片跟随效果完整示例
2016/09/16 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
浅谈JS获取元素的N种方法及其动静态讨论
2017/08/25 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
Angular使用ControlValueAccessor创建自定义表单控件
2019/03/08 Javascript
JavaScript或jQuery 获取option value值方法解析
2020/05/12 jQuery
[58:59]完美世界DOTA2联赛PWL S3 access vs CPG 第一场 12.13
2020/12/16 DOTA
python抓取京东商城手机列表url实例代码
2013/12/18 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
python实现将多个文件分配到多个文件夹的方法
2019/01/07 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
python set集合使用方法解析
2019/11/05 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
Python reques接口测试框架实现代码
2020/07/28 Python
html5中的一些标签学习(心得)
2016/10/18 HTML / CSS
竞选部门副经理的自荐书范文
2014/02/11 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
公民代理授权委托书
2014/09/24 职场文书
部队反四风对照检查材料
2014/09/26 职场文书
校长四风对照检查材料
2014/09/27 职场文书
永不妥协观后感
2015/06/10 职场文书
何玥事迹观后感
2015/06/16 职场文书
超外差式晶体管收音机的组装与统调
2021/04/22 无线电
VUE递归树形实现多级列表
2022/07/15 Vue.js