StartMVC开发手册

可以快速上手的开发文档

手册目录

请求对象

$_GET

use startmvc\core\Request;
Request::get($key);
Request::get($key, [    //获取$_GET[$key]
'default' => '',    //如果不存在的话,输出默认值
'type' => 'string',    //数据类型(int,string,float,bool,array)
'filter' => true,     //是否安全过滤(默认过滤,通过htmlspecialchars方式过滤)
'function' => ''    //函数处理
]);
//第二个参数是数组,数组每个元素都是有默认值的,可选填。下同。
//比如
$id=Request::get('id',['type'=>'int']);

$_POST

use startmvc\core\Request;
Request::post($key)
Request::post($key, [    //获取$_Post[$key]
'default' => '',    //如果不存在的话,输出默认值
'type' => 'string',    //数据类型(int,string,float,bool,array)
'filter' => true,     //是否安全过滤(默认过滤,通过htmlspecialchars方式过滤)
'function' => ''    //函数处理
]);


POST数据流

use startmvc\core\Request;
Request::postInput();
// 等同于file_get_contents('php://input')


HEADER

use startmvc\core\Request; 
Request::headers(); // 获取请求Header的数组
Request::header($key);
Request::header($key [    // 获取键名为$key的请求Header的值
    'default' => '',    //如果不存在的话,输出默认值
    'type' => 'string',    //数据类型(int,string,float,bool,array)
    'filter' => true,     //是否安全过滤(默认过滤,通过htmlspecialchars方式过滤)
    'function' => ''    //函数处理
]);


$_COOKIE

cookie设定

use startmvc\core\Cookie;
Cookie::set($key, $value);
Cookie::set($key, $value, [    //设置$_COOKIE[$key],值为$value
    'expire' => 0,    //过期时间(默认会话结束)
    'path' => '/',    //目录(默认根目录)
    'domain' => null,    //域名(默认为当前域名),
    'secure' => false,    //是否只能使用SSL安全连接(默认为否),
    'httponly' => true    //是否只能通过http协议请求(默认为是)
]);

cookie获取

Cookie::get($key);
Cookie::get($key, [    //获取$_COOKIE[$key]
    'default' => '',    //如果不存在的话,输出默认值
    'type' => 'string',    //数据类型(int,string,float,bool,array)
    'filter' => true,     //是否安全过滤(默认过滤,通过htmlspecialchars方式过滤)
    'function' => ''    //函数处理
]);

cookie删除

Cookie::delete($key);
Cookie::delete($key, [    //删除$_COOKIE[$key]
    'expire' => 过期时间(默认会话结束),
    'path' => 目录(默认根目录),
    'domain' => 域名(默认为当前域名),
    'secure' => 是否只能使用SSL安全连接(默认为否),
    'httponly' => 是否只能通过http协议请求(默认为是)
]);
//Cookie::delete()的第二个参数和Cookie::set()第三个参数如果不一致,有可能删除的就不是同一个Cookie


$_SESSION

默认session的有效时间为24分钟

use startmvc\core\Session;
Session::set($key, $value);    //设置$_SESSION[$key],值为$value
Session::get($key);
Session::get($key, [       //获取$_SESSION[$key]
    'default' => '',    //如果不存在的话,输出默认值
    'type' => 'string',    //数据类型(int,string,float,bool,array)
    'filter' => true,     //是否安全过滤(默认过滤,通过htmlspecialchars方式过滤)
    'function' => ''    //函数处理
]);
Session::delete($key);  //删除一个$_SESSION[$key]


函数处理

在Http::get()、Http::post()、Cookie::get()、Session::get()的第二个参数中,都有一个function的选项设置。用法演示如下:

'function' => 'md5'  //md5($value)
'function' => ['md5', 'base64_encode']  //base64_encode(md5($value))
'function' => ['md5', 'substr:,2'] //substr(md5($value), 2)
'function' => ['md5', 'substr:,2,3'] //substr(md5($value), 2, 3)
// 哪一个参数为空,此参数为当前$value,例如
'function' => 'str_repalce:abcd,,efgh'    //str_replace('abcd', $value, 'efgh')