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 相关文章推荐
一个简单实现多条件查询的例子
Oct 09 PHP
PHP 遍历文件实现代码
May 04 PHP
CodeIgniter CLI模式简介
Jun 17 PHP
php中switch语句用法详解
Aug 17 PHP
PHP易混淆知识整理笔记
Sep 24 PHP
PHP生成随机字符串(3种方法)
Sep 25 PHP
配置Nginx+PHP的正确思路与过程
May 10 PHP
PHP实现批量检测网站是否能够正常打开的方法
Aug 23 PHP
jquery+thinkphp实现跨域抓取数据的方法
Oct 15 PHP
php使用ftp实现文件上传与下载功能
Jul 21 PHP
PHP多线程模拟实现秒杀抢单
Feb 07 PHP
详细分析PHP7与PHP5区别
Jun 26 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
PHP4实际应用经验篇(1)
2006/10/09 PHP
深入php常用函数的使用汇总
2013/06/08 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
2013/06/29 PHP
使用YUI+Ant 实现JS CSS压缩
2014/09/02 PHP
PHP中ini_set与ini_get用法实例
2014/11/04 PHP
php 运算符与表达式详细介绍
2016/11/30 PHP
laravel 多图上传及图片的存储例子
2019/10/14 PHP
FusionCharts图表显示双Y轴双(多)曲线
2012/11/22 Javascript
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
2015/11/26 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
layui弹出层效果实现代码
2017/05/19 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
javascript实现文本框标签验证的实例代码
2018/10/14 Javascript
jquery实现动态添加附件功能
2018/10/23 jQuery
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
js数组去重的方法总结
2019/01/18 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
vue 查看dist文件里的结构(多种方式)
2020/01/17 Javascript
Python处理文本文件中控制字符的方法
2017/02/07 Python
解决uWSGI的编码问题详解
2017/03/24 Python
Python lambda函数基本用法实例分析
2018/03/16 Python
Win10 安装PyCharm2019.1.1(图文教程)
2019/09/29 Python
python实现秒杀商品的微信自动提醒功能(代码详解)
2020/04/27 Python
python中round函数如何使用
2020/06/19 Python
python调用私有属性的方法总结
2020/07/24 Python
如何用python实现一个HTTP连接池
2021/01/14 Python
英国电气世界:Electrical World
2019/09/08 全球购物
歌唱比赛获奖感言
2014/01/21 职场文书
英语专业学生个人求职信
2014/01/28 职场文书
青春励志演讲稿
2014/04/29 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
工商局领导班子存在的问题整改措施思想汇报
2014/10/05 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
oracle覆盖导入dmp文件的2种方法
2021/05/21 Oracle