Yii2.0建立公共方法简单示例


Posted in PHP onJanuary 29, 2019

本文实例讲述了Yii2.0建立公共方法。分享给大家供大家参考,具体如下:

因为之前写项目都是用的Thinkphp,公共方法都写在Tp自带的common下面的function里面,初次接触Yii框架发现它自身没带这个机制。在项目中,很多地方都需要公共方法的存在,以提高代码复用性,减少重复开发的时间,那yii2如何定义自己的公共方法呢?

以yii2-advanced版本为基础来进行介绍:

Yii2.0建立公共方法简单示例

上图为yii2-advanced版本的基础目录结构,而./common 目录为公共资源目录,我们可以把定义的方法放在这个目录下,在此目录下我们随意建立一个文件比如”helps”目录,因为考虑到公共方法可能会有功能上的划分类,所以建立一个统一目录来进行管理。

Yii2.0建立公共方法简单示例

这里我建立了两个工具类。

YII2采用了PHP的新特性命名空间

建立公共方法

<?php
namespace common\helps;
/*
 * 自定义全局公共方法
 */
class tools{
  public static function hello(){
    echo 'hello world!';
  }
}
?>

直接调用

<?
/*直接在控制器中调用*/
public function actionIndex(){
  \common\helps\tools::hello();
}
?>

声明命名空间调用

<?
namespace backend\controllers;
use \common\helps\tools;//使用工具类
class IndexController extends Controller{
  public function actionIndex(){
    tools::hello();//直接进行调用
  }
}
?>

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

PHP 相关文章推荐
PHP之COOKIE支持详解
Sep 20 PHP
深入解析PHP内存管理之谁动了我的内存
Jun 20 PHP
解析PHP实现下载文件的两种方法
Jul 05 PHP
destoon会员注册提示“数据校验失败(2)”解决方法
Jun 21 PHP
高性能PHP框架Symfony2经典入门教程
Jul 08 PHP
php备份数据库类分享
Apr 14 PHP
php提取身份证号码中的生日日期以及验证是否为成年人的函数
Sep 29 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
php实现微信企业号支付个人的方法详解
Jul 26 PHP
对php 判断http还是https,以及获得当前url的方法详解
Jan 15 PHP
Laravel 类和接口注入相关的代码
Oct 15 PHP
PHP程序守护进程化实现方法详解
Jul 16 PHP
使用vs code编辑调试php配置的方法
Jan 29 #PHP
Yii2.0实现的批量更新及批量插入功能示例
Jan 29 #PHP
详解关于php的xdebug配置(编辑器vscode)
Jan 29 #PHP
PDO::inTransaction讲解
Jan 28 #PHP
PDO::getAvailableDrivers讲解
Jan 28 #PHP
PDO::getAttribute讲解
Jan 28 #PHP
PDO::exec讲解
Jan 28 #PHP
You might like
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
2009/04/24 PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
2014/04/29 PHP
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
PHP实现SMTP邮件的发送实例
2018/09/27 PHP
Laravel 创建可以传递参数 Console服务的例子
2019/10/14 PHP
准确获得页面、窗口高度及宽度的JS
2006/11/26 Javascript
jQuery 常见学习网站与参考书
2009/11/09 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
node.js中的dns.getServers方法使用说明
2014/12/08 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
jQuery3.0中的buildFragment私有函数详解
2016/08/16 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
jQuery为某个div加入行样式
2017/06/09 jQuery
tween.js缓动补间动画算法示例
2018/02/13 Javascript
基于node搭建服务器,写接口,调接口,跨域的实例
2018/05/13 Javascript
解决vuejs项目里css引用背景图片不能显示的问题
2018/09/13 Javascript
Vue filter格式化时间戳时间成标准日期格式的方法
2018/09/16 Javascript
微信小程序中使用echarts的实现方法
2019/04/24 Javascript
vue.js的简单自动求和计算实例
2019/11/08 Javascript
JS Generator 函数的含义与用法实例总结
2020/04/08 Javascript
jQuery带控制按钮轮播图插件
2020/07/31 jQuery
Python中实现两个字典(dict)合并的方法
2014/09/23 Python
Python基于PycURL自动处理cookie的方法
2015/07/25 Python
python制作简单五子棋游戏
2019/06/18 Python
jupyter notebook 多行输出实例
2020/04/09 Python
python自定义函数def的应用详解
2020/06/03 Python
Keras 快速解决OOM超内存的问题
2020/06/11 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
Python常驻任务实现接收外界参数代码解析
2020/07/21 Python
罗技英国官方网站:Logitech UK
2020/11/03 全球购物
DJI全球:DJI Global
2021/03/15 全球购物
楼面部长岗位职责范本
2014/02/14 职场文书
我的中国梦心得体会范文
2016/01/05 职场文书