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会比较长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长 ...
随机推荐
- 强化学习(七)时序差分离线控制算法Q-Learning
在强化学习(六)时序差分在线控制算法SARSA中我们讨论了时序差分的在线控制算法SARSA,而另一类时序差分的离线控制算法还没有讨论,因此本文我们关注于时序差分离线控制算法,主要是经典的Q-Learn ...
- lib和dll文件的初了解
lib,dll这两样东西在许多编程书中都很少出现,但实际工程中,这两样东西的作用确实非常重要,我觉得c++程序员都有必要了解这两样东西. 首先总共有 动态链接 和 静态链接 这两种链接方式 |静态链接 ...
- 【春华秋实】深入源码理解.NET Core中Startup的注册及运行
写在前面 开发.NET Core应用,直接映入眼帘的就是Startup类和Program类,它们是.NET Core应用程序的起点.通过使用Startup,可以配置化处理所有向应用程序所做的请求的 ...
- Lumen框架—升级改造之路-开篇
一.前言 首先,我先阐述下,为什么要做这件事.lumen是一款比较轻型的PHP框架,但是,作为项目开发来说,它还是缺少很多东西,比如Response返回值规范的自定义,异常抛出格式的自定义,以及 ...
- SVN安装和使用(简单版)
为什么使用SVN? 通常软件的开发需要团队协作开发,每个人负责一个方面,都做完后需要把每个人的代码整合在一起,而每个人的代码方面不同或版本不同就会拖延开发进度对开发项目造成麻烦,如果一个人需要另一个人 ...
- EF Core 快速上手——创建应用的DbContext
系列文章 EF Core 快速上手--EF Core 入门 EF Core 快速上手--EF Core的三种主要关系类型 本节导航 定义应用的DbContext 创建DbContext的一个实例 创建 ...
- Spring Cloud 系列之 Eureka 实现服务注册与发现
如果你对 Spring Cloud 体系还不是很了解,可以先读一下 Spring Cloud 都有哪些模块 Eureka 是 Netflix 开源的服务注册发现组件,服务发现可以说是微服务架构的核心功 ...
- c#中如何使用到模糊查询
c#中如何使用到模糊查询,先举个最简单实用的例子,可在vs控制台应用程序中输出: 定义实体类: public class Student { public int ...
- MongoDB学习(配置用户账户和访问控制)
理解admin数据库 安装MongoDB时,会自动创建admin数据库,这是一个特殊的库.有些用户账户角色赋予用户操作多个数据库的权限,而这些用户只能在admin数据库中创建.要创建有权操作所有数据库 ...
- javascript排序算法-快速排序
快速排序 概念: (1) 首先,从数组中选择中间一项作为主元. (2) 创建两个指针,左边一个指向数组第一个项,右边一个指向数组最后一个项.移动左指针直到我们找到一个比主元大的元素,接着,移动右指针直 ...