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 相关文章推荐
NT IIS下用ODBC连接数据库
Oct 09 PHP
snoopy PHP版的网络客户端提供本地下载
Apr 15 PHP
PHPUnit PHP测试框架安装方法
Mar 23 PHP
php在多维数组中根据键名快速查询其父键以及父键值的代码
May 07 PHP
thinkphp 多表 事务详解
Jun 17 PHP
jQuery+php实现ajax文件即时上传的详解
Jun 17 PHP
php获取当前页面完整URL地址
Dec 30 PHP
PHP利用超级全局变量$_POST来接收表单数据的实例
Nov 05 PHP
zend框架实现支持sql server的操作方法
Dec 08 PHP
ThinkPHP删除栏目(实现批量删除栏目)
Jun 21 PHP
Ajax中的JSON格式与php传输过程全面解析
Nov 14 PHP
thinkphp5.0自定义验证规则使用方法
Nov 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
自动分页的不完整解决方案
2007/01/12 PHP
关于Intype一些小问题的解决办法
2008/03/28 PHP
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
2011/05/04 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
javascript与webservice的通信实现代码
2010/12/25 Javascript
javaScript 计算两个日期的天数相差(示例代码)
2013/12/27 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
js+div+css下拉导航菜单完整代码分享
2016/12/28 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
vue子路由跳转实现tab选项卡
2019/07/24 Javascript
jQuery - AJAX load() 实例用法详解
2019/08/27 jQuery
vue+iview分页组件的封装
2020/11/17 Vue.js
uniapp开发小程序实现滑动页面控制元素的显示和隐藏效果
2020/12/10 Javascript
[01:20]2018DOTA2亚洲邀请赛总决赛战队LGD晋级之路
2018/04/07 DOTA
用Python中的wxPython实现最基本的浏览器功能
2015/04/14 Python
Python脚本判断 Linux 是否运行在虚拟机上
2015/04/25 Python
将Python代码打包为jar软件的简单方法
2015/08/04 Python
python删除某个字符
2018/03/19 Python
django用户登录和注销的实现方法
2018/07/16 Python
Python实现PyPDF2处理PDF文件的方法示例
2019/09/25 Python
Python定义函数时参数有默认值问题解决
2019/12/19 Python
如何在python开发工具PyCharm中搭建QtPy环境(教程详解)
2020/02/04 Python
Python如何操作docker redis过程解析
2020/08/10 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
浅析HTML5:'data-'属性的作用
2018/01/23 HTML / CSS
使用SVG实现提示框功能的示例代码
2020/06/05 HTML / CSS
校园餐饮创业计划书
2014/01/10 职场文书
员工评语大全
2014/01/19 职场文书
小学教师师德承诺书
2014/05/23 职场文书
干部职工纪律作风整改措施思想汇报
2014/10/11 职场文书
工作总结之小学教师体育工作范文(3篇)
2019/10/07 职场文书
python如何读取和存储dict()与.json格式文件
2022/06/25 Python