如果你需要在核心之外扩展和使用第三方类库,并且该类库不是通过 Composer 安装使用,那么可以直接放入应用根目录下面的 extend 目录下面,该目录是官方建议的第三方扩展类库目录。
ThinkPHP5.0 内置了一个文件处理类 \think\File ,内置的文件上传操作也是调用了该类进行处理的。 File 类继承了PHP的 SplFileObject 类,因此可以调用 SplFileObject 类所有的属性和方法。
单元测试 首先安装 ThinkPHP5 的单元测试扩展,进入命令行,切换到tp5的应用根目录下面,执行: composer require topthink/think-testing 官方的 5.0 版本的扩展库版本号都是 1.* , 2.0 版本均为T
安装扩展 使用 Composer 安装 ThinkPHP5 的图像处理类库: composer require topthink/think- image 图像操作 下面来看下图像操作类的基础方法。 打开图像文件 假设当前入口文件目录下面有一个 ima
上传文件 ThinkPHP5.0 对文件上传的支持更加简单。 内置的上传只是上传到本地服务器,上传到远程或者第三方平台的话需要自己扩展。 假设表单代码如下: form action= /index/index/upload en
首先使用 Composer 安装 think-captcha 扩展包: composer require topthink/think-captcha 官方的 5.0 版本的扩展库版本号都是 1.* , 2.0 版本均为ThinkPHP 5.1 版本专用。 验证码的简单用法 扩展包内定义了
分页实现 版本 新增功能 5.0.5 分页方法返回 think\Paginator 对象(用法不变) 5.0.1 支持第二个参数直接传入总记录数 ThinkPHP5.0 内置了分页实现,要给数据添加分页输出功能在 5.0 变得非常
概述 ThinkPHP采用 think\Cookie 类提供Cookie支持。 版本 新增功能 5.0.4 增加 forever 方法用于永久保存 基本操作 初始化 // cookie初始化 Cookie::init([ prefix = think_ , expire = 3600 , path = / ]); // 指定当
ThinkPHP内置通过 \think\Lang 类提供多语言支持,如果你的应用涉及到国际化的支持,那么可以定义相关的语言包文件。任何字符串形式的输出,都可以定义语言常量。 开启和加载语言包
概述 ThinkPHP采用 think\Session 类提供 Session 功能支持。 版本 新增功能 5.0.5 增加安全选项参数 secure 和 httponly 5.0.2 增加 flash 方法和 flush 方法 Session初始化 在ThinkPHP 5.0 中使用 \think\Session
概述 ThinkPHP采用 think\Cache 类提供缓存功能支持。 版本 新增功能 5.0.11 缓存设置方法有效期支持指定过期时间( DateTime ) 5.0.2 增加 remember 方法 设置 缓存支持采用驱动方式,所以缓存在
在确保用户请求的数据安全之后,数据库的安全隐患就已经很少了,因为 5.0 版本的数据操作使用了PDO预处理机制及自动参数绑定功能,请确保: 尽量少使用数组查询条件而应该使用查
网站的上传功能也是一个非常容易被攻击的入口,所以对上传功能的安全检查是尤其必要的。 系统的 think\File 提供了文件上传的安全支持,包括对文件后缀、文件类型、文件大小以及上
其它的一些安全建议: 对所有公共的操作方法做必要的安全检查,防止用户通过URL直接调用; 不要缓存需要用户认证的页面; 对用户的上传文件,做必要的安全检查,例如上传路径和
如果需要使用内置的规则验证单个数据,可以使用静态调用的方式。 // 日期格式验证 Validate::dateFormat( 2016-03-09 , Y-m-d ); // true // 验证是否有效的日期 Validate::is( 2016-06-03 , date ); // true /
验证规则支持对表单的令牌验证,首先需要在你的表单里面增加下面隐藏域: input type = hidden name = __token__ value = { $Request .token} / 或者 { :token ()} 然后在你的验证规则中,添加 token 验证规
虽然5.0的底层安全防护比之前版本要强大不少,但永远不要相信用户提交的数据,建议务必遵守下面规则: 设置 public 目录为唯一对外访问目录,不要把资源文件放入应用目录; 开启
系统内置的验证规则如下: 格式验证类 require 验证某个字段必须,例如: name = require number 或者 integer 验证某个字段的值是否为数字(采用 filter_var 验证),例如: num = number float 验证
如果你需要在控制器中进行验证,并且继承了 \think\Controller 的话,可以调用控制器类提供的 validate 方法进行验证,如下: $result = $this -validate( [ name = thinkphp , email = thinkphp@qq.com , ], [
在模型中的验证方式如下: $User = new User;$result = $User-validate( [ name = require|max:25 , email = email , ], [ name.require = 名称必须 , name.max = 名称最多不能超过25个字符 , email = 邮箱格式错误 , ])-sa
扫描二维码关注我们
在线时间09:00-24:00
8527114
yxgd678
账号密码登录
登录即视为同意《用户注册协议》
我已阅读并同意 《用户注册协议》