zoukankan      html  css  js  c++  java
  • 【ThinkPHP框架3.2版本学习总结】五、实用项

    1. 页面TRACE:追踪信息

    2. getLastSql ():获取最后一次执行的sql语句

    3. session

    自动开启session

    4. cookie

    5. 文件载入

    (1)自定义函数创建

    (2)通过系统配置变量设置

    在ThinkPHP运行过程中,只能动态加载function.php中的文件内容,但是在实际开发中,我们也可能需要动态加载其他文件内容,那么如何解决呢?

    答:可以通过在Common文件夹下的config.php文件配置如下属性,即可实现自动载入功能,默认情况下,此属性是以Common算起。

    ①配置方法:

    ②创建路径:

    ③使用方式:

    (3)通过load方法实现页面加载

    虽然以上两者方式都可以实现文件的加载,但是由于都是实现自动加载功能,所以当系统运行时,无论我们需不需要使用加载文件,系统都会自动加载,那么如何实现按需载入?

    答:可以通过load方法:load方法也是以模块/Common文件夹算起。

    ①在Home模块下的Common文件夹中添加文件

    ②使用方式:

    (4)自定义类载入方式

    ①定义工具类目录

    在项目目录中(Shop),创建任意文件夹,名字任选(例:Tools)

    ②在Tools文件夹中,创建自定义类目录(例:Market),然后把我们以前开发的自定义类放入此文件夹,注意命名:【类名.class.php】

    ③定义文件的命名空间

    ④自定义类的引用

    6. 验证码

    (1)普通验证码

    ①简单实现

    ②自定制实现

    (2)中文验证码

    ①开启中文验证码

    ②设置中文字体

    复制系统字体Fonts文件夹中的中文字体:最好使用黑体常规(simhei.ttf)把simhei.ttf复制到Thinkphp源码文件夹中的Think文件夹下的Verify文件夹下的zhttfs即可。

    ③编写代码实现

    (3)认证验证码

    7. 数据分页

    (1)基本实现方法

    第一步:实例化模型类
    第二步:获取总记录数
    第三步:实例化分页程序
    第四步:显示分页页脚
    第五步:通过limit方法实现分页
    第六步:显示输出数据到模板页面

    (2)定制分页程序

    8. 文件上传

    第一步:实例化上传类
    第二步:设置上传参数
    第三步:调用upload()完成文件上传

    上传之后$info信息结果如下:

    在实际开发中我们只需要获取picurl属性中的savename属性以及savepath属性即可

    把上传之后的图片路径保存到数据库中

    9. 钩子函数

    什么钩子函数?

    就是不用手动调用,TP框架会在特定的时间(插入前、插入后。。。。)调用我们自己定义好的钩子函数。

    _before_insert(&$data, $option):(添加前)在调用add方法时这个方法就自动调用了
    _after_insert($data, $option):(添加后)
    _before_update(&$data, $option):(修改前)在调用save方法时这个方法就自动调用了
    _after_update($data, $option):(修改后)
    _before_delete(&$data, $option):(删除前)在调用delete方法时这个方法就自动调用了
    _after_delete($data, $option):(删除后)

    10. 缩略图

    第一步:实例化Image图像类
    第二步:通过open方法打开要操作的图像
    第三步:通过thumb方法生成缩略图
    第四步:通过save保存文件

    thumb方法第三个参数:

    11. 添加图片水印

  • 相关阅读:
    《Cracking the Coding Interview》——第7章:数学和概率论——题目4
    《Cracking the Coding Interview》——第7章:数学和概率论——题目3
    《Cracking the Coding Interview》——第7章:数学和概率论——题目2
    最小二乘拟合
    设置手机邮件下载文件路径
    #pragma data_seg() 共享数据// MyData段 // 进程 // DLL
    树状数组板子 x
    博弈论 x
    luogu P1147 连续自然数和 x
    luogu P1068 分数线划定 x
  • 原文地址:https://www.cnblogs.com/chenjiacheng/p/6522585.html
Copyright © 2011-2022 走看看