内置小工具
phpGrace 封装了一些常用的工具函数。虽然很多开发者追求百分百的面向对象编程,但适当的使用函数也是一种高效的选择,合适、合理才是最好的选择,phpGrace 提供了一个自定义函数文件,您可以在文件内编写自己的自定义函数并使用。

内置自定义函数文件位置

/phpGrace/graceFunctions.php

内置自定义函数编写及调用

// 打开 : /phpGrace/graceFunctions.php 编写
function test(){
    echo 'test...';
}
// 在框架其他文件内调用
// 框架在运行时会自动加载自定义函数文件
// 所以可以直接使用自定义函数
\test(); // 加上 \ 代表顶级命名空间,预防命名空间冲突;

打印变量

函数 :  p($var, $type = false)  
功能 :  print_r 和 var_dump 函数的组合;
参数 :  可填2个参数
        1、需要打印的值
        2、可选参数 【默认 false】 默认使用 print_r 打印变量, 为 true 时使用 var_dump 打印变量;

终止运行

函数 : pgExit($msg)
功能 : 终止运行并输出消息,等于 exit();  
参数 : $msg 可选参数 【 默认 ""】

动态设置 option 选中状态

函数 : isSelected($val1, $val2)
参数 : 2个比较变量;


示例 :

class indexController extends grace{
    public function index(){
        $array = array(
            1 => 'php',
            2 => '.net',
            3 => 'jave'
        );
        $currentKey = 2;
        echo "<select>";
        foreach($array as $k => $v){
            echo '<option value="'.$k.'"';
            \isSelected($k, $currentKey);
            echo '>'.$v.'</option>';
        }
        echo "</select>";
    }
}

去除全部空白字符

函数 : trimAll($val) 
参数 : 字符串变量; 
返回 : 去除空格后的字符串


示例 :

<?php
class indexController extends grace{
    public function index(){
	$str = trimAll(' g	r 
a ce ');
        echo $str;
    }
}

动态设置radio/CheckBox 选中状态

参数: 2个参数,分别为 对比数值1、   对比数值2
返回:如果两个值一致,则输出 checked 字符

<input type="radio" name="" <?php isChecked($val1,$val2);?> id="">
<input type="checkbox" name="" <?php isChecked($val1,$val2);?> id="">

将符合规则的数组转换为option

函数 : dataToOption($data, $currentId = 0) 
参数 : 2个参数
       1、符合规则的数据 【array(值 => 名称),如:array(1 => '男', 2=> '女');】
       2、选中数据 id;返回 : html 形式的 option 列表
<?php
class indexController extends grace{
    public function index(){
        echo "<select>";
        $array = array(1 => 'php', 2 => '.net', 3 => 'jave');
        dataToOption($array, 2);
        echo "</select>";
    }
}

修正 POST 参数

函数 : initPOST($name, $value = '') 
参数 : 2个参数 
       1、 $_POST 键名称 
       2、修正后的值
返回 : 修正后的值
说明 : 类似于判断某个 $_POST 数据是否为 empty,如果是对其进行初始化赋值;
class indexController extends grace{
    public function index(){
        echo initPOST('name','grace');
    }
}

修正 GET 参数

函数 : initGET($name, $value = '') 
参数 : 2个参数
       1、$_POST 键名称 
       2、修正后的值
返回 : 修正后的值
说明 : 类似于判断某个 $_GET 数据是否为 empty,如果是对其进行初始化赋值;
class indexController extends grace{
    public function index(){
        echo initGET('name','grace');
    }
}

工具实例化函数1

功能:适用于不能使用命名空间的工具类,自动加载且保证一次加载
函数:tool($toolName, $arguments) 
参数:
     1、工具类名称 
     2、对应参数【根据工具类构造函数决定参数个数】

演示

$excel = tool('PHPExcel');
$tool  = tool('test', 1 , 'grace');

工具实例化函数2

功能: 适用于能使用命名空间的工具类    
函数: t($toolName)
参数: 1、工具类名称
说明: 需要工具类放在 \phpgrace\tools 目录下

演示

$excel = t('phpExcel');
$excel = new phpgrace/tools/phpexcel();

检测是否为移动端端访问

函数: isMobile()
参数: 无参数
返回: bool值。 移动端访问则为真,非移动端为假

判断当前协议是否为HTTPS

函数: isHttps()
参数: 无参数
返回: bool值。 为https则返回真,非https返回假

检测是否AJax请求

函数: isAjax()
参数: 无参数
返回: bool值。为ajax请求返回真,非ajax请求返回假

 检测是否POST请求

函数:isPost()
参数:无参数
返回:bool值。为POST请求,则为真,否则为假

检测是否为GET请求

函数:isGet()
参数:无参数
返回:bool值。为get请求,则为真,否则为假

检测是否Patch请求

函数:isPatch()
参数:无参数
返回:bool值。为PATCH请求,则为真,否则为假

检测是否OPTIONS请求

函数:isOptions()
参数:无参数
返回:bool值。为OPTIONS请求,则为真,否则为假

POST数据进行实体化

功能:将POST的数据进行实体转义,如将< 、 >  这些转为 &lt,&gt,&quot等实体(方便理解例如:加密)
函数:postFilter()
参数:无参数,默认为$_POST的,不需要手动再传参 
返回:实体化后的$_POST数据

POST数据解开实体化

功能:将实体后的数据还原。如 &lt,&gt等还原为<、>等(方便理解例如:解密)
函数:jiepost($data)
参数:实体化后的数据
返回:已经还原实体转义后的数据