##二次开发>系统函数
*这里提到的常用系统函数默认已加载,不需要重复加载*
* * * * *
**1.把操作系统文件路径转成项目相对路径,**
~~~
DOCUMENT_ROOT = 'd:/wwwroot/phpstart';
echo script_path('d:/wwwroot/phpstart/test/group1');
//输出:test/group1
~~~
* * * * *
**2.写cookie**
~~~
set_cookie($key, $value, $expire, $httponly)
或
CK($key, $value, $expire, $httponly)
~~~
$expire 默认值 = ps::app_config("system.cookie.expire")
$httponly 默认值=false
* * * * *
**3.读cookie**
~~~
get_cookie($key)
或
CK($key)
~~~
返回 cookie值或者false
* * * * *
**输出消息并结束程序**
> @param string 消息
@param int 错误代码,正确为0
@param mixed(string/array) $url_forward 跳转地址
@param int $ms 跳转等待时间,0为不跳转
实例
~~~
message('error' ,1, '/', 3000);
~~~
**输出json格式的消息并结束程序***
> @param string | array 消息数据
@param string 消息
@param int 错误代码,正确为0
~~~
ret_json('密码错误','登录失败',2);
//输出json内容:{errNum:2,retMsg:'登录失败',retData:'密码错误'}
ret_json(array('cat','dog'));
//输出json内容:{errNum:0,retMsg:'success',retData:['cat','dog']}
~~~
* * * * *
**输出xml格式的消息并结束程序***
> @param string | array 消息数据
@param string 消息
@param int 错误代码,正确为0
~~~
ret_xml('密码错误','登录失败',2);
//输出xml内容:
<xml><errNum>2</errNum><retMsg><![CDATA[登录失败]]></retMsg><retData><![CDATA[密码错误]]></retData></xml>
ret_xml(array('cat','dog'));
//输出xml内容:
<xml><errNum>0</errNum><retMsg><![CDATA[success]]></retMsg><retData><array><![CDATA[cat]]></array><array><![CDATA[dog]]></array></retData></xml>
~~~
* * * * *
**xml与数组的转换**
~~~
xml_encode($array);//数组转XML
xml_decode($xmlstring);XML字符串转数组
~~~
* * * * *
**302跳转**
~~~
_302($url)
~~~
* * * * *
**404错误**
~~~
_404($data)
~~~
404错误页的模版在 phpstart/tpl/404.html
* * * * *
**防止xss注入**
对 `'` `"`转义,防止sql注入
~~~
function X($string)
function X($array)
~~~
注意,这里是指针参数,直接转换参数的,不会返回新的内容