路由模式
二、混合模式
开启路由,并使用路由定义+默认PATH_INFO
方式的混合:
'url_route_on' => true, 'url_route_must'=> false,
该方式下面,只需要对需要定义路由规则的访问地址定义路由规则,其它的仍然按照第一种普通模式的PATH_INFO
模式访问URL。
三、强制模式
开启路由,并设置必须定义路由才能访问:
'url_route_on' => true, 'url_route_must' => true,
这种方式下面必须严格给每一个访问地址定义路由规则(包括首页),否则将抛出异常。
首页的路由规则采用/
定义即可,例如下面把网站首页路由输出Hello,world!
Route::get('/',function(){ return 'Hello,world!'; });
概述
ThinkPHP5.0
验证使用独立的\think\Validate
类或者验证器进行验证。
独立验证
任何时候,都可以使用Validate
类进行独立的验证操作,例如:
$validate = new Validate([ 'name' => 'require|max:25', 'email' => 'email' ]); $data = [ 'name' => 'thinkphp', 'email' => '[email protected]' ]; if (!$validate->check($data)) { dump($validate->getError()); }
验证器
这是5.0
推荐的验证方式,为具体的验证场景或者数据表定义好验证器类,直接调用验证类的check
方法即可完成验证,下面是一个例子:
我们定义一个\app\index\validate\User
验证器类用于User
的验证。
namespace app\index\validate;
use think\Validate;
class User extends Validate
{ protected $rule = [ 'name' => 'require|max:25', 'email' => 'email', ]; }
在需要进行User
验证的地方,添加如下代码即可:
$data = [
'name'=>'thinkphp', 'email'=>'[email protected]' ]; $validate = Loader::validate('User'); if(!$validate->check($data)){ dump($validate->getError()); }
使用助手函数实例化验证器
扫描二维码关注公众号,回复:
9747402 查看本文章
$validate = validate('User');
静态调用
如果需要使用内置的规则验证单个数据,可以使用静态调用的方式。
// 日期格式验证
Validate::dateFormat('2016-03-09','Y-m-d'); // true // 验证是否有效的日期 Validate::is('2016-06-03','date'); // true // 验证是否有效邮箱地址 Validate::is('[email protected]','email'); // true // 验证是否在某个范围 Validate::in('a',['a','b','c']); // true // 验证是否大于某个值 Validate::gt(10,8); // true // 正则验证 Validate::regex(100,'\d+'); // true