内置小工具
动态设置radio/CheckBox 选中状态
检测是否为GET请求
POST数据解开实体化
phpGrace 封装了一些常用的工具函数。虽然很多开发者追求百分百的面向对象编程,但适当的使用函数也是一种高效的选择,合适、合理才是最好的选择,phpGrace 提供了一个自定义函数文件,您可以在文件内编写自己的自定义函数并使用。
内置自定义函数文件位置
/phpGrace/graceFunctions.php
内置自定义函数编写及调用
Code phpLine:8复制1. 2. 3. 4. 5. 6. 7. 8.
// 打开 : /phpGrace/graceFunctions.php 编写
function
test(){echo
'test...'
;- }
// 在框架其他文件内调用
// 框架在运行时会自动加载自定义函数文件
// 所以可以直接使用自定义函数
- \test();
// 加上 \ 代表顶级命名空间,预防命名空间冲突;
打印变量
Code phpLine:5复制1. 2. 3. 4. 5.
- 函数 : p(
$var
,$type
= false)- 功能 : print_r 和 var_dump 函数的组合;
- 参数 : 可填
2
个参数1
、需要打印的值2
、可选参数 【默认 false】 默认使用 print_r 打印变量, 为 true 时使用 var_dump 打印变量;
终止运行
Code phpLine:3复制1. 2. 3.
- 函数 : pgExit(
$msg
)- 功能 : 终止运行并输出消息,等于
exit
();- 参数 :
$msg
可选参数 【 默认""
】
动态设置 option 选中状态
Code phpLine:2复制1. 2.
- 函数 : isSelected(
$val1
,$val2
)- 参数 :
2
个比较变量;
示例 :
Code phpLine:17复制1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
class
indexControllerextends
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>"
;- }
- }
去除全部空白字符
Code phpLine:3复制1. 2. 3.
- 函数 : trimAll(
$val
)- 参数 : 字符串变量;
- 返回 : 去除空格后的字符串
示例 :
Code phpLine:8复制1. 2. 3. 4. 5. 6. 7. 8.
- <?php
class
indexControllerextends
grace{public
function
index(){$str
= trimAll(' g r- a ce ');
echo
$str
;- }
- }
动态设置radio/CheckBox 选中状态
参数: 2个参数,分别为 对比数值1、 对比数值2
返回:如果两个值一致,则输出 checked 字符
Code htmlLine:2复制1. 2.
<input
type
="radio"
name
=""
<
?php isChecked($val1,$val2);?>
id="">
<input
type
="checkbox"
name
=""
<
?php isChecked($val1,$val2);?>
id="">
将符合规则的数组转换为option
Code phpLine:4复制1. 2. 3. 4.
- 函数 : dataToOption(
$data
,$currentId
=0
)- 参数 :
2
个参数1
、符合规则的数据 【array
(值 => 名称),如:array
(1
=>'男'
,2
=>'女'
);】2
、选中数据 id;返回 : html 形式的 option 列表
Code phpLine:9复制1. 2. 3. 4. 5. 6. 7. 8. 9.
- <?php
class
indexControllerextends
grace{public
function
index(){echo
"<select>"
;$array
=array
(1
=>'php'
,2
=>'.net'
,3
=>'jave'
);- dataToOption(
$array
,2
);echo
"</select>"
;- }
- }
修正 POST 参数
Code phpLine:6复制1. 2. 3. 4. 5. 6.
- 函数 : initPOST(
$name
,$value
=''
)- 参数 :
2
个参数1
、$_POST
键名称2
、修正后的值- 返回 : 修正后的值
- 说明 : 类似于判断某个
$_POST
数据是否为empty
,如果是对其进行初始化赋值;
Code phpLine:5复制1. 2. 3. 4. 5.
class
indexControllerextends
grace{public
function
index(){echo
initPOST('name'
,'grace'
);- }
- }
修正 GET 参数
Code phpLine:6复制1. 2. 3. 4. 5. 6.
- 函数 : initGET(
$name
,$value
=''
)- 参数 :
2
个参数1
、$_POST
键名称2
、修正后的值- 返回 : 修正后的值
- 说明 : 类似于判断某个
$_GET
数据是否为empty
,如果是对其进行初始化赋值;
Code phpLine:5复制1. 2. 3. 4. 5.
class
indexControllerextends
grace{public
function
index(){echo
initGET('name'
,'grace'
);- }
- }
工具实例化函数1
Code phpLine:5复制1. 2. 3. 4. 5.
- 功能:适用于不能使用命名空间的工具类,自动加载且保证一次加载
- 函数:tool(
$toolName
,$arguments
)- 参数:
1
、工具类名称2
、对应参数【根据工具类构造函数决定参数个数】
演示
Code phpLine:2复制1. 2.
$excel
= tool('PHPExcel'
);$tool
= tool('test'
,1
,'grace'
);
工具实例化函数2
Code phpLine:4复制1. 2. 3. 4.
- 功能: 适用于能使用命名空间的工具类
- 函数: t(
$toolName
)- 参数:
1
、工具类名称- 说明: 需要工具类放在 \phpgrace\tools 目录下
演示
Code phpLine:2复制1. 2.
$excel
= t('phpExcel'
);$excel
=new
phpgrace/tools/phpexcel();
检测是否为移动端端访问
Code phpLine:3复制1. 2. 3.
- 函数: isMobile()
- 参数: 无参数
- 返回: bool值。 移动端访问则为真,非移动端为假
判断当前协议是否为HTTPS
Code phpLine:3复制1. 2. 3.
- 函数: isHttps()
- 参数: 无参数
- 返回: bool值。 为https则返回真,非https返回假
检测是否AJax请求
Code phpLine:3复制1. 2. 3.
- 函数: isAjax()
- 参数: 无参数
- 返回: bool值。为ajax请求返回真,非ajax请求返回假
检测是否POST请求
Code phpLine:3复制1. 2. 3.
- 函数:isPost()
- 参数:无参数
- 返回:bool值。为POST请求,则为真,否则为假
检测是否为GET请求
Code phpLine:3复制1. 2. 3.
- 函数:isGet()
- 参数:无参数
- 返回:bool值。为get请求,则为真,否则为假
检测是否Patch请求
Code phpLine:3复制1. 2. 3.
- 函数:isPatch()
- 参数:无参数
- 返回:bool值。为PATCH请求,则为真,否则为假
检测是否OPTIONS请求
Code phpLine:3复制1. 2. 3.
- 函数:isOptions()
- 参数:无参数
- 返回:bool值。为OPTIONS请求,则为真,否则为假
POST数据进行实体化
Code phpLine:4复制1. 2. 3. 4.
- 功能:将POST的数据进行实体转义,如将< 、 > 这些转为 <,>,"等实体(方便理解例如:加密)
- 函数:postFilter()
- 参数:无参数,默认为
$_POST
的,不需要手动再传参- 返回:实体化后的
$_POST
数据
POST数据解开实体化
Code phpLine:4复制1. 2. 3. 4.
- 功能:将实体后的数据还原。如 <,>等还原为<、>等(方便理解例如:解密)
- 函数:jiepost(
$data
)- 参数:实体化后的数据
- 返回:已经还原实体转义后的数据