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环境搭建最新方法
Sep 05 PHP
用定制的PHP应用程序来获取Web服务器的状态信息
Oct 09 PHP
PHP随机生成随机个数的字母组合示例
Jan 14 PHP
基于php和mysql的简单的dao类实现crud操作功能
Jan 27 PHP
php+mysql查询优化简单实例
Jan 13 PHP
简单的自定义php模板引擎
Aug 26 PHP
php中二分法查找算法实例分析
Sep 22 PHP
php fread读取文件注意事项
Sep 24 PHP
php in_array() 检查数组中是否存在某个值详解
Nov 23 PHP
PHP基于ORM方式操作MySQL数据库实例
Jun 21 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
laravel接管Dingo-api和默认的错误处理方式
Oct 25 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
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
2009/09/30 PHP
php 数组动态添加实现代码(最土团购系统的价格排序)
2011/12/30 PHP
解析csv数据导入mysql的方法
2013/07/01 PHP
常见的四种POST 提交数据方式(小总结)
2015/10/08 PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
2016/10/20 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
Thinkphp 空操作、空控制器、命名空间(详解)
2017/05/05 PHP
PHP PDOStatement::nextRowset讲解
2019/02/01 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
tp5.1 框架数据库高级查询技巧实例总结
2020/05/25 PHP
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
js遍历子节点子元素附属性及方法
2014/08/19 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
2015/12/08 Javascript
微信小程序 loading(加载中提示框)实例
2016/10/28 Javascript
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
2017/01/06 Javascript
jQuery Form插件使用详解_动力节点Java学院整理
2017/07/17 jQuery
微信小程序实现下拉刷新和轮播图效果
2017/11/21 Javascript
JavaScript门道之标准库
2018/05/26 Javascript
如何把vuejs打包出来的文件整合到springboot里
2018/07/26 Javascript
node获取客户端ip功能简单示例
2019/08/24 Javascript
vue项目启动出现cannot GET /服务错误的解决方法
2020/04/26 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
vue element el-transfer增加拖拽功能
2021/01/15 Vue.js
selenium+python环境配置教程详解
2019/05/28 Python
python实现最大子序和(分治+动态规划)
2019/07/05 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
2020/09/02 Python
浅谈Selenium+Webdriver 常用的元素定位方式
2021/01/13 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
HTML5 drag和drop具体使用详解
2021/01/18 HTML / CSS
巴西手表购物网站:eclock
2019/03/19 全球购物
手工社团活动方案
2014/02/17 职场文书
爱心活动计划书
2014/04/26 职场文书
北京奥运会主题口号
2014/06/13 职场文书
十二生肖观后感
2015/06/12 职场文书