YII2中如何自定义全局函数

时间:2022-09-09 23:48:13

有些时候我们需要自定义一些全局函数来完成我们的工作。

方法一:

直接写在入口文件处

<?php

// comment out the following two lines when deployed to production
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev'); require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php'; $config = require __DIR__ . '/../config/web.php'; //自定义函数
function test() {
echo 'test ...';
} (new yii\web\Application($config))->run();

  

方法二:

在app下创建common目录,并创建functions.php文件,并在入口文件中通过require引入。

<?php

// comment out the following two lines when deployed to production
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev'); require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php'; //引入自定义函数
require __DIR__ . '/../common/functions.php'; $config = require __DIR__ . '/../config/web.php'; (new yii\web\Application($config))->run();

  

方法三:

通过YII的命名空间来完成我们自定义函数的引入,在app下创建helpers目录,并创建tools.php(名字可以随意)。

tools.php的代码如下:

<?php
//注意这里,要跟你的目录名一致
namespace app\helpers; class Tools
{
public static function test()
{
echo 'test ...';
}
}

然后我们在控制器里就可以通过命名空间来调用了。

<?php

namespace app\controllers;

use yii\web\Controller;
use app\helpers\tools; class IndexController extends Controller
{ public function actionIndex()
{
Tools::test();
}
}

  

YII2中如何自定义全局函数的更多相关文章

  1. 详解如何在Laravel中增加自定义全局函数

    http://www.php.cn/php-weizijiaocheng-383928.html 如何在Laravel中增加自定义全局函数?在我们的应用里经常会有一些全局都可能会用的函数,我们应该怎么 ...

  2. tp3&period;2&period;3自定义全局函数的使用

    全局函数的定义,好处就是我们可以跨文件使用,而且调用方式可以直接调用,十分方便,在这里做个小记录 1.在Application/Home/Common目录下面新建一个名为function.php的文件 ...

  3. laravel 创建自定义全局函数

    全局函数的实现是依靠在初始化的时候,将helps.php或者functions.php直接进行了加载.而Laravel中bootstrap/autoload.php(laravel 5.5 貌似没有这 ...

  4. laravel 自定义全局函数

    在 app 目录下创建一个 Helpers 目录,在此目录下创建文件.这些文件就是全局函数文件.如叫:function.php 加载此文件: 1 . 在 bootstrap/autoload.php ...

  5. &lbrack;moka同学笔记&rsqb;Yii2 自定义class、自定义全局函数&lpar;摘录&rpar;

    1.在app\components下新建MyComponent.PHP namespace app\components; use Yii; use yii\base\Component; use y ...

  6. 7&period;Yii2&period;0框架自定义全局工具函数

    功能: 新建共用方法的打印方法,可以很方便的格式化打印 一.新建helper/function.php <?php /** * Created by Haima. * Author:Haima ...

  7. laravel 5 自定义全局函数,怎么弄呢?

    在app/Helpers/(目录可以自己随便来) 下新建一个文件 functions.php 在functions.php 中加入这个方法 然后在 bootstrap/autoload.php 中添加 ...

  8. 007&period;CI4框架CodeIgniter&comma; 加载自己的helper辅助类,调用自己helper中定义各种全局函数

    01. 我们在Helpers文件中创建一个Tx_helper.php的文件,里面就下一个函数 <?php //输出 function ShowMessage($AMsg) { echo &quo ...

  9. js中的自定义异常处理函数

    1. Can I suppress JavaScript error messages? 2. Can I set up my own JavaScript error handler? 3. Can ...

随机推荐

  1. C&num;与数据库访问技术总结(十二)数据阅读器(DataReader)2

    遍历数据阅读器中的记录 当ExecuteReader方法返回DataReader对象时,当前光标的位置在第一条记录的前面. 必须调用阅读器的Read方法把光标移动到第一条记录,然后,第一条记录将变成当 ...

  2. SQl中Left Join 、Right Join 、Inner Join与Ful Join

    1 left join 左外连接:查询结果以左表数据为准.假如左表有四条数据,右表有三条数据,则查询结果为四条,且都是左表中有的数据. 例如: EMP表: SAL表: 左连接 左连接,表EMP是主表, ...

  3. JavaScript实现数组转置

    //数组转置  var  arr=[[2,5,6,8],[8,5,6,9],[9,6,2,1]] ;   var arrNew=[];//定义一个新数组   for(var i=0;i<arr[ ...

  4. css z-index详解

    写css z-index的时候经常会出现很多莫名其妙的问题,下面对z-index属性做彻底的剖析,本文参考了<一个css中z-index的用法>,并做了很多demo,方便了解z-index ...

  5. java的占位符

    java占位符的类型: 常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.fo ...

  6. Windows phone 8 学习笔记&lpar;9&rpar; 集成

    原文:Windows phone 8 学习笔记(9) 集成 本节整理了之前并没有提到的Windows phone 8 系统相关集成支持,包括选择器.锁定屏幕的.联系人的访问等.选择器列举了若干内置应用 ...

  7. vue2&period;0引入腾讯地图

    百度很多东西,然后我没找到腾讯地图在VUE2.0里面的引用.于是根据找的其他地图引用资料进行尝试.步骤如下. 首先在src里面建立了TMap.js的文件,内容如下: export function T ...

  8. Linux内存管理专题

    Linux的内存管理涉及到的内容非常庞杂,而且与内核的方方面面耦合在一起,想要理解透彻非常困难. 在开始学习之前进行了一些准备工作<如何展开Linux Memory Management学习?& ...

  9. Delphi疑难问题整理!!!

    一.Dll调用时报错,例如: TGetResPrice = function(var AName: string; AFileName: string): TResourceRecArray; std ...

  10. java enum 用法

    /* * Hibernate, Relational Persistence for Idiomatic Java * * Copyright (c) 2010, Red Hat Inc. or th ...