thinkphp5
芝麻开门2015
这个作者很懒,什么都没留下…
展开
-
pdo预处理机制及自动参数绑定功能
PDO的预处理语句就是把你想要运行的sql语句编译成一种模板,然后dao可以绑定参数去处理。它的好处是,sql语句只解析一次,可以对参数绑定一次或者多次执行,提高了性能,节约了带宽的传输。另外可以防止sql注入。...原创 2020-12-10 16:55:53 · 378 阅读 · 0 评论 -
TP5模板引擎处理html标签
原创 2020-12-10 15:38:48 · 685 阅读 · 0 评论 -
TP5.1.39中使用belongsToMany报 pivot model must extends: \think\model\Pivot
解决办法:将中间表的model层写成 public function Comment() { return $this->belongsToMany('app\model\index\Rule', 'app\index\model\MiddleRule', 'rule_id','article_id'); }中间表示middleRule 将middleRule 的model层继承自Privot...原创 2020-11-10 14:39:06 · 1447 阅读 · 0 评论 -
session_start(): open(/tmp/sess_1e6e96186c98e4dbb1947e63e20c340f, O_RDWR) failed: Permission denied
session_start(): open(/tmp/sess_1e6e96186c98e4dbb1947e63e20c340f, O_RDWR) failed: Permission denied (13)解决办法给文件权限chmod 777 /tmp/sess_1e6e96186c98e4dbb1947e63e20c340f原创 2020-08-13 16:29:43 · 539 阅读 · 0 评论 -
Non-static method think\Env::get() should not be called statically
TP5.1.39版本将引入的Env 由think\Env 改为think\facade\Env如下图,think\facade\Env可以使用静态方法原创 2020-08-10 16:11:39 · 2162 阅读 · 0 评论 -
phpstudy使用nginx服务器配置虚拟站点
php开发过程的时候,有多个php项目,使用的是nginx服务器,那么如何来配置nginx服务器呢,nginx.conf 配置如下# power by www.php.cn#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#er...原创 2020-03-02 11:38:55 · 2512 阅读 · 1 评论 -
TP5项目部署时,出现mkdir(): Permission denied
主要是runtime没有权限可以给runtime文件夹赋权限即可ps:注意 线上环境不要将调试信息打开.一些报错的漏洞可能被利用!!原创 2020-02-12 10:15:25 · 335 阅读 · 0 评论 -
linux服务器环境部署TP5项目
1.先登录服务器安装lnmp环境,可以执行下面脚本 使用ssh登录到服务器:ssh root@104.224.106.36 可以使用 命名 ,下次免密登录:cat ~/.ssh/id_rsa.pub | ssh -p 27988 root@104.224.166.36 "umask 077; mkdir -p .ssh; cat>>.ssh/authorize...原创 2020-02-09 15:49:57 · 1592 阅读 · 2 评论 -
TP5.1去掉路由router后的.html文件
http://zoo.test.com:7888/index/index/index.html将配置文件中'url_html_suffix' => 'html'改成'url_html_suffix' => false,原创 2019-05-15 13:47:50 · 1845 阅读 · 0 评论 -
查看当前项目的tp版本
原创 2019-03-22 13:51:55 · 5004 阅读 · 0 评论 -
TP5 中引入第三方类库 extend与vendor区别
1.在入口文件中添加 define('EXTEND_PATH', __DIR__ .'/extend/');其实tp5给了我们一种方式去实现不用命名空间来加载第三方的类!我们将类文件放到extend目录下,在控制器中要用到类的话可以通过import(),函数手动引入类文件,引入方法官方手册中有说明(架构->自动加载->类库导入)。 // 引...转载 2019-03-07 15:30:54 · 2729 阅读 · 0 评论 -
tp5项目路由
原创 2019-03-04 16:32:44 · 316 阅读 · 0 评论 -
docker下mysql停止主从同步
docker exec -it slave /bin/mastermysql -uxym -pshow databases;stop slave; //关键点,停止slave;在主库添加数据 重启slave数据库原创 2019-02-27 17:29:54 · 992 阅读 · 0 评论 -
tp5实现数据库主从同步,读写分离database.php配置文件
<?php// +----------------------------------------------------------------------// | ThinkPHP [ WE CAN DO IT JUST THINK ]// +---------------------------------------------------------------------...原创 2019-02-27 16:53:31 · 2634 阅读 · 0 评论 -
tp5部署的到服务器上报 mkdir(): Permission denied
runtime目录的权限不够进入项目目录,修改权限即可 chmod -R 777 runtime原创 2019-02-27 16:34:53 · 1654 阅读 · 1 评论 -
php think build自动生成模块
报错:[think\exception\ErrorException] include(/Applications/MAMP/htdocs/tp5/application/build.php): failed to open strea...原创 2018-10-24 09:52:43 · 1867 阅读 · 0 评论 -
tp5下Could not open input file: think解决办法
主要是think文件 在根目录下是这样的在mac终端执行需要执行这个语句 /Applications/MAMP/htdocs/tp5/think queue:work --queue -v原创 2018-09-17 23:10:02 · 9848 阅读 · 1 评论 -
tp5执行队列时 报 [PDOException] SQLSTATE[HY000] [2002] Connection refused 解决办法
[PDOException] SQLSTATE[HY000] [2002] Connection refused可能是数据没有填写好将数据库相关信息填好即可解决问题由于我的是mac电脑 我使用的环境是mamp pro 数据库端口号为8889 ...原创 2018-09-17 23:16:24 · 8669 阅读 · 0 评论 -
tp5运行redis失败问题排查与解决方法
1.运行echo phpinfo();查看是否安装redis扩展如果出现如下界面表示有表示成功如果没有则需要安装redishttps://blog.csdn.net/resilient/article/details/76611390 2.判断redis服务器是否启动,可以查看这个 mac下启动redis服务...原创 2018-09-24 12:34:41 · 6990 阅读 · 2 评论 -
thinkphp5生成文件缓存,redis缓存
[ // 驱动方式 'type' => 'File', // 缓存保存目录 'path' => CACHE_PATH, // 缓存前缀 'prefix' => '', // 缓存有效期 0表示永久缓存 'expire' => 0,],配置文件 缓存一个分类 ...原创 2018-09-24 15:22:12 · 3634 阅读 · 0 评论 -
PHP无限级分类设计
1.使用的是tp5框架,先下载好配置好代码2.设计数据库 添加数据CREATE TABLE `tp5_goods_class` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL COMMENT '分类名字', `pid` int(11) NOT NULL COMMENT '分类父id', ...原创 2018-09-20 11:42:30 · 310 阅读 · 0 评论 -
nodetree多级分类展示
效果如下 1.基于TP5代码需要准备几个js文件<script src="/static/js/jquery-1.4.4.min.js" charset="utf-8"></script><script src="/static/js/common.js" charset="utf-8"></script原创 2018-09-20 22:13:19 · 2712 阅读 · 0 评论 -
thinkphp扩展下载的一种方式
可以根据composer下载扩展也可以到官网下载原创 2018-09-21 20:47:12 · 286 阅读 · 0 评论 -
thinkphp5执行定时任务
先编写定时任务代码CREATE TABLE `tp5_mail` ( `id` int(11) NOT NULL AUTO_INCREMENT, `mail` varchar(255) DEFAULT NULL, `send_time` int(11) DEFAULT NULL, `status` int(11) DEFAULT NULL, PRIMARY KEY (`id...原创 2018-10-08 00:05:39 · 5502 阅读 · 0 评论 -
thinkphp5框架中为啥要使用traits
原文https://www.jianshu.com/p/e9feb128bfb3requirePHP >= 5.4.0介绍Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 ...转载 2018-10-19 14:34:57 · 3060 阅读 · 0 评论 -
thinkphp5自定义命令行报错 [InvalidArgumentException] Command "date" is not defined.
thinkphp5自定义命令行报错之前编写的test又是可以执行的后来发现是配置中缺少相应参数直接在commnd.php 中加入app\index\command\Date再次运行 发现问题得以解决了...原创 2018-10-10 15:31:05 · 9531 阅读 · 1 评论 -
halt()与$this->error throw new Exception($e)区别
halt是抛出异常,告诉你发生错误的文件名,第几行,给程序员看的。$this->error是给用户看的,比如登陆时密码不正确就用$this->error. halt()调试变量输出后中止程序的执行 给程序员看的$this->error('报错啦');给用户页面看的 throw new Exception('返回的数据不是字符串,不符合');抛出...原创 2018-10-22 16:06:41 · 767 阅读 · 0 评论 -
thinkphp中使用collection->toArray()将数据转换成标准的数组类型
Array( [0] => app\common\model\GoodsSku Object ( [connection:protected] => Array ( ) [query:protected] => ...原创 2018-10-23 15:30:44 · 7970 阅读 · 0 评论 -
thinkphp中vendor与exend区别
1、vendor vendor的是通过composer的方法进行自动引入到第三方扩展库vendor目录里的,调用方法是利用的vendor方法: $re = vendor ( 'PHPExcel' ); $mail = new \PHPExcel ();2、extend extend是通过手动的方法直接把第三方扩展库或者自己写的封装库直接引入到extend目录里,...转载 2018-07-29 08:56:39 · 351 阅读 · 0 评论