调试模式并不能完全满足我们调试的需要,有时候我们需要手动的输出一些调试信息。除了本身可以借助一些开发工具进行调试外,ThinkPHP还提供了一些内置的调试工具和函数。 Trace调试功能就是ThinkPHP提供给开发人员的一个用于开发调试的辅助工具。可以实时显示当前页面或者请求的请求信息、运行情况、SQL执行、错误信息和调试信息等,并支持自定义显示,并且支持没有页面输出的操作调试。最新版本页面Tr…

点击阅读全文>>

Thinkphp6.0支持多应用模式,但是在使用上感觉没有之前的便利,之前我们通过复制入口文件,在里面修改相应的应用目录名称就可以单独创建一个基础应用目录,多个应用的MVC可以在不同的应用目录下,也可以在同一个application下。 而最新版本的thinkphp6.0(dev),我们如果要实现多应用模式,需要操作的步骤就比之前稍微多一点。在app目录下创建文件夹,里面存在MVC,即代表1个应用…

点击阅读全文>>

thinkphp5.1以后官方已经把5.2版本直接命名为thinkphp6.0。感觉thinkphp的每次重要的版本更新都是革命性的变革,以致于感觉自己都没有足够的精力去跟进新版本的速度。为此,我还特地去讨论区发了个帖子询问thinkphp什么时候能够出一个“稳定版”,不用担心每次版本迭代都是大刀阔斧,能平滑过渡升级。欣慰的是官方的回复也挺及时,答复说道Thinkphp6.0的架构基本固定成型,“…

点击阅读全文>>

ThinkPHP的内容发布模块用上了百度的UEditor,但是在实现过程中发现Ueditor为安全起见对写入的HTML代码进行转义,在ThinkPHP视图层使用htmlspecialchars_decode后发现图片依然有问题,双引号被过滤,这个则是被ThinkPHP为安全起见给过滤掉了。 在官网找解决方案,看到有直接改内核代码的: 直接在ThinkPHP的conf文件夹目录下找到ThinkPHP…

点击阅读全文>>

此次的项目开发主要为一个数据查询系统,因此重点在于数据库的架构,程序基于ThinkPHP开发,ThinkPHP的高级模型里面有讲到分表操作,但是在读了系统的相关源代码并实践后,发现默认的分表模型并不好用,于是便重写了一个分表实现方法,原理是相通的,重点是思路。 对该项目的想法是每基于ID每500W分一个表,利用merge存储引擎来实现分表。pbank为主表,pbnak_1,pbank_2&#823…

点击阅读全文>>