tp5问题整理
问题1:致命错误: Class 'think\controller' not found

原因:controller首字母要大写
解决:use think\Controller;
问题2:html页面验证码显示不出

原因:php.ini中gd2没有开启
解决:删除注释
收获:PHP 并不仅限于创建 HTML 输出, 它也可以创建和处理包括 GIF,PNG,JPEG,WBMP 以及 XPM 在内的多种格式的图像。
更加方便的是,PHP 可以直接将图像数据流输出到浏览器。要想在 PHP 中使用图像处理功能,你需要连带 gd 库一起来编译 PHP。

问题3、数据表字段不存在:[update_time]

原因:在建数据表的时候觉得不需要update_time字段,便没有添加它。不知道tp5为什么一定要同时创建create_time和update_time(黑人问号脸.jpg)
解决: 给数据表添加上去:alter table think_content add update_time timestamp default null on update current_timestamp;
问题4、怎么在模板中引用公共文件
在Index/index/index.html中想要引入公共文件head.html、foot.html提示找不到文件
解决:在view下新建common文件夹,将公共文件放入。
{include file="common/head"} //index.html文件中写入

问题5、查询数据后导出成csv,最后有代码

原因:这些代码是页面的跟踪日志,会默认输出来的。
解决:在代码(方法)最后加上 exit; 就好了。

问题6、未定义数组下标:0

原因:开发环境中会产成“未定义数组下标: 0”的错误提示。
解决:屏蔽提示。在 common.php 加入 error_reporting(E_ERROR | E_WARNING | E_PARSE);
问题7、Invalid argument supplied for foreach()

原因:因为fputcsv()需要传入数组参数,当find查询得出的$row不是数组时会报错。
解决:查询数据时用select()
问题8、下载第三方类库后放哪里
解决:放根目录下的extend文件夹。
使用:例,第三方类Ucpass放在extend/sms/lib文件夹下,index.php导入第三方类Ucpass时,先use sms\lib\Ucpass;然后再$foo = new \sms\lib\Ucpass();


问题9、成员函数返回null

var_dump($ucpass);后

原因:因为我的Ucpass的实例化是在serverSid.php中
解决:将它include起来

问题10、当使用云之讯时,导入文件时出现Bom头问题
原因:他的Ucpass.php是notepad++编辑的,默认带上会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。
它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。
但对于PHP来说,并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正文的一部分。
解决:复制内容重新新建文件。
问题11、Mysql的列超出范围值

原因:我的mobile字段一开始是int(11),后来输入手机号码就错了
解决:将mobile字段改成char(11)就ok
问题12、在一个方法中设置session值,在另一个同控制器的方法下无法获取
原因:暂时不知道
解决:
//在function1()设置,第一个参数为键,第二个为值,第三个为过期时间(秒)
Cache::set('param',$param,); //在function2()获取
$param = Cache::get('param');
持续更新。。。。。。
tp5问题整理的更多相关文章
- Tp5整理
一.命名规则 目录级和文件命名 目录采用小写字母+下划线命名: 类文件名采用驼峰法命名(比如:ArticleDetail.php),其它文件与目录命名规则同: 类名与类文件名须保持一致,采用驼峰法: ...
- TP5.1 遇见问题整理
1. 获取当前执行sql fetchSql(true) self::table('ecm_draw_address')->field('id')->where(array('store_i ...
- TP5学习基础一:增删改查小demo
①TP5--增删改查简单的demo 我先吐槽一下:因为工作需要研究tp5,去官网看了一下哎呦,资源挺多挺全啊!然后下载唯一免费的官方教程,我曹pdf打开533页.讲的很细但是开发能等看完才做吗?看到精 ...
- tp5 整合 个推
这里因为业务需要使用推送功能 uni 里面前端集成了个推 所以选择了个推来做推送. 个推的官方文档地址: http://docs.getui.com/getui/server/php/start/ 在 ...
- vue.js面试题整理
Vue.js面试题整理 一.什么是MVVM? MVVM是Model-View-ViewModel的缩写.MVVM是一种设计思想.Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务 ...
- TP5实现邮件发送(PHP 利用QQ邮箱发送邮件「PHPMailer」)
在 PHP 应用开发中,往往需要验证用户邮箱.发送消息通知,而使用 PHP 内置的 mail() 函数,则需要邮件系统的支持. 如果熟悉 IMAP/SMTP 协议,结合 Socket 功能就可以编写邮 ...
- TP5 多条件whereOr查询
问题背景:最近在用ThinkPHP 5开发项目的过程中,发现根据筛选条件做or查询的时候,连贯操作不可以使用where进行条件查询了. 首先列出一个user数据表的信息: uid uname grad ...
- tp5 -- 微信公众号支付
近来期间比较忙, 忙完之后发现最近有挺多的东西没有整理,于是乎.就将以前用到的一些小东西整理了一下. 如果对您有帮助,则是我最大的幸运. 本篇主要是说了一下整合TP5的微信公众号支付. 不过由于最近T ...
- TP5.x——聊天列表查询
前言 查询聊天列表,并返回最后一条聊天记录.这个有一个比较尴尬的点就是,一个是你主动发出的,一个是你接收的. 所以这个SQL会比较长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长 ...
随机推荐
- Python的魔法函数系列 __getattrbute__和__getattr__
#!/usr/bin/env python # -*- coding: utf-8 -*- import sys __metaclass__ = type """ _ ...
- JavaScript夯实基础系列(四):原型
在JavaScript中有六种数据类型:number.string.boolean.null.undefined以及对象,ES6加入了一种新的数据类型symbol.其中对象称为引用类型,其他数据类 ...
- 全文检索-Elasticsearch (三) DSL
DSL:elasticsearch查询语言elasticsearch对json 的语法有严格的要求,每个json串不能换行,同时一个json串和一个json串之间,必须有一个换行 DSL(介绍查询语言 ...
- Spring学习(二):Spring支持的5种Bean Scope
序言 Scope是定义Spring如何创建bean的实例的.Spring容器最初提供了两种bean的scope类型:singleton和prototype,但发布2.0以后,又引入了另外三种scope ...
- Flask的session使用
由于http是无状态保存的协议,session可以看作不同请求之间保存数据的一种机制.flask的session是基于cookie的会话保持. 流程 当客户端进行第一次请求的时候,客户端的HTTP r ...
- 解决mysql时区与系统时区不一致问题。异常:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone.
异常信息:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone ...
- SpringBoot打包项目成war包,并部署到服务器的tomcat上
最近遇到项目需要上线部署到服务器,需要讲自己的SpringBoot项目打包成war包,部署到tomcat上. 下面记录下打包部署的过程. (1) 将SpringBoot项目打包成war包, 一.修改打 ...
- Java设计模式---ChainOfResponsibility责任链模式
参考于 : 大话设计模式 马士兵设计模式视频 代码参考于马士兵设计模式视频 写在开头:职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系 图来自大话设计模式,下面我的代 ...
- DevExpress TreeList 禁止节点拖动到其他节点上
背景 在做一个类似文件树的控件,支持节点从树上向其它的控件拖动程序,但是要保证树上的节点不能拖动上其他的节点上. 代码 /// <summary> /// 拖动节点完成 /// </ ...
- 逐个使用C++11新特性
C++11 auto & decltype auto:根据变量初始值来推导变量类型,并用右值初始化变量. decltype:从表达式推导出类型,并将变量定义为该类型,但不用表达式的值初始化该变 ...
