zoukankan      html  css  js  c++  java
  • Yii使用公共函数

    在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。
    在入口文件index.php里添加
    require_once('protected/function.php');
    即可对其引用,成为公用的函数集合。
    function.php如下:
    <?php
    /**
      * This is the shortcut to DIRECTORY_SEPARATOR
      */
    defined('DS') or define('DS',DIRECTORY_SEPARATOR);
     
    defined('TIME') or define('TIME', time());
     
    defined('MTIME') or define('MTIME', intval(microtime(true)));//返回当前unix时间戳
    /**
      * This is the shortcut to Yii::app()
      */
    function app()
    {
     return Yii::app();
    }
     
    /**
      * This is the shortcut to Yii::app()->clientScript
      */
    function cs()
    {
         // You could also call the client script instance via Yii::app()->clientScript
         // But this is faster
         return Yii::app()->getClientScript();
    }
     
    /**
      * This is the shortcut to Yii::app()->user.
      */
    function user()
    {
         return Yii::app()->getUser();
    }
     
    /**
      * This is the shortcut to Yii::app()->createUrl()
      */
    function url( $route , $params = array (), $ampersand = '&' )
    {
         return Yii::app()->createUrl( $route , $params ,$ampersand );
    }
     
    /**
      * This is the shortcut to CHtml::encode
      */
    /* function h( $text )
    {
         return htmlspecialchars( $text ,ENT_QUOTES,Yii::app()->charset);
    } */
     
    /**
      * This is the shortcut to Yii::app()->request->baseUrl
      * If the parameter is given, it will be returned and prefixed with the app baseUrl.
      */
    function baseDir( $url =null)
    {
         //static $baseUrl = null;
         //if ( $baseUrl ===null)
         $baseUrl =Yii::app()->getRequest()->getBaseUrl();
         return $url ===null ?  $baseUrl :  $baseUrl . '/' .ltrim( $url , '/' );
    }
     
    /**
      * Returns the named application parameter.
      * This is the shortcut to Yii::app()->params[$name].
      */
    function param( $name )
    {
         return Yii::app()->params[ $name ];
    }
    /**
      * A useful one that I use in development is the following
      * which dumps the target with syntax highlighting on by default
      */
    function dump( $target )
    {
       return CVarDumper::dump( $target , 10, true) ;
    }
     
    function mk_dir($dir, $mode = 0777)
    {
     if (is_dir($dir) || @mkdir($dir,$mode)) return true;
     if (!mk_dir(dirname($dir),$mode)) return false;
     return @mkdir($dir,$mode);
    }
     
    //自定义更多函数...

     

  • 相关阅读:
    go1.13 mod 实践和常见问题
    etcd 添加用户,授权特定目录
    golang 你所不知道的 log 和 fmt
    redis 原理系列之--字符串存储的实现原理(1)
    golang 写文件--详细解释
    面向对象范式的核心本质是?---不是继承 不是封装也不是多态
    关于自控力和拖延 的一点分享--《自控力》
    Linux 精确判断是否同一文件--及终端获取字符串md5 的值
    ARM版本及系列
    技术团队塑造
  • 原文地址:https://www.cnblogs.com/grimm/p/5414735.html
Copyright © 2011-2022 走看看