ThinkPHP
amberom
这个作者很懒,什么都没留下…
展开
-
TP5中模型使用join关联查询,或者子查询,带时间查询时,出现找不到表的情况
需要把子查询变为闭包查询。原创 2024-06-18 15:09:20 · 202 阅读 · 0 评论 -
Tp5.1 生成一套pc(电脑)端一套mobile(手机)端
1.首先是在application下面的 common.php 里面判断是手机端还是电脑端,附上代码:if (Request::isMobile()) { define('VIEW_PATH', __DIR__ . '/../application/index/view/mobile/');} else { define('VIEW_PATH', __DIR__ . '/../application/index/view/pc/');}先要在上面use 一下 use thin转载 2022-04-06 15:44:34 · 373 阅读 · 0 评论 -
tp框架记录mysql慢日志_MYSQL慢查询和日志
一、简介开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。二、参数说明slow_query_log 慢查询开启状态slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)long_query_time 查询超过多少秒才记录三、设置步骤1.查看慢查询相关参数mysql> show variables like 'slow转载 2022-01-24 16:12:29 · 485 阅读 · 0 评论 -
thinkphp mysql索引_在in查询语句中强行使用索引,thinkphp也可行
不得不说,mysql查询时选择索引不太智能。刚刚打开一个页面时候明显比其他同类页面慢很多。经分析同类页面的mysql语句结构完全一样。explain SELECT `yid`,`co_name` FROM `hy_co_main` WHERE ( province_id=2 and industry_id in (93,102,103,105,106,108) ) ORDER BY yid desc LIMIT 30不用索引,近7秒SELECT `yid`,`co_name` FROM hy_c转载 2022-01-23 17:06:50 · 799 阅读 · 0 评论 -
TP5.1中判断手机端和PC端
一、判断手机端和PC端1. 使用自定义方法function isMobile(){ // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } //此条摘自TPM智能切换模板引擎,适合TPM开发 if (isset ($_SERVER['HTTP_CLIENT']) && 'PhoneC转载 2021-11-13 17:07:07 · 963 阅读 · 0 评论 -
thinkphp5 success这个成功后怎么带参数跳转?
$this->success('你成功了',url('a',['参数1'=>值,‘参数2’=>值...]));原创 2021-06-15 22:07:06 · 1698 阅读 · 2 评论 -
tp5 连接多个数据库
1直接在config.php中中定义db_config_test'db_config_test' => 'mysql://root:root@127.0.0.1/table_namet#utf8',2.连接部分代码: //数据读取 例子$list = Db::connect('db_config_test')->table('table_name')->select();或者$list = Db::connect('db_config_test')->q...原创 2021-03-17 09:33:26 · 353 阅读 · 0 评论 -
thinkPHP5框架闭包函数与子查询传参用法示例
这篇文章主要介绍了thinkPHP5框架闭包函数与子查询传参用法,结合实例形式分析了thinkPHP5闭包查询与参数传递相关操作技巧,需要的朋友可以参考下本文实例讲述了thinkPHP5框架闭包函数用法。分享给大家供大家参考,具体如下:普通使用举个栗子:$this->where(function ($query){ $query->where('id', 1)->whereor('id', 2);})->find();上述栗子就是一个简单的where查转载 2020-11-02 11:05:34 · 1237 阅读 · 0 评论 -
宝塔面板搭载ThinkPHP5.0项目关于open_basedir报错解决办法
今天折腾了一下把服务器重装系统,然后安装宝塔面板玩玩,在服务器运营商配置好安全组后,一键搭建LAMP环境还算顺利,确实比较方便。把tp5的项目放上去一运行gg了,上来就报了三个错: 搜了半天怎么解决open_basedir报错,让改php.ini的都是胡扯,应该在网站设置里把‘防跨站攻击’勾选去掉:然后到软件管理——找到所安装的PHP——设置——重启即可:转自:https://blog.csdn.net/msllws/article/details/82191686...转载 2020-09-19 17:32:32 · 265 阅读 · 0 评论 -
tp5 模板标签赋值
<select name="area_city" id="area_city" lay-filter="area_city"> <option value="">选择城市</option> {Region:city name="v" key="k" pident="$result['area_province']"} <option value="{$v.ident}" {if condition="$resu.原创 2020-08-06 15:49:10 · 447 阅读 · 0 评论 -
多表关联一对多查询实现取最新一条数据,tp5分组查询最新的数据
//构建子查询$comment_subquery = Db::name('comment') ->field('oid,calltime') ->order('calltime','desc') ->limit(1) ->buildSql();$list = OrderModel::alias('a') ->join([$comment_subquery=> 'b'], 'a.id=b.oid', 'left') -.原创 2020-06-10 10:30:45 · 3393 阅读 · 0 评论 -
TP5中volist嵌套时里层volist获取外层 volist循环的key
情景:tp5.0框架,有时我们需要在第二层volist,获取第一层的volist的key的值,如何获取呢?应该不少的朋友都不知怎么获取吧。TP5中有两个嵌套的volist循环,采用的是关联数组,怎样在循环内部分别获取外层volist的Key和内层volist的key值?解决方法:在tp5中的ASSIGN标签ASSIGN标签用于在模板文件中定义变量{volist name='$data' id='user' key='k'} {assign name="etype" value="$k..转载 2020-06-04 16:32:10 · 2463 阅读 · 0 评论 -
tp5 设置session 过期时间没作用
要在application/config.php配置文件里// +---------------------------------------------------------------------- // | 会话设置 // +---------------------------------------------------------------------- 'session' => [ 'id' ...原创 2020-05-13 09:27:19 · 1188 阅读 · 0 评论 -
layui多图上传实现删除功能
在使用layui的多图上传时发现没有删除功能在网上搜索解决办法时有的感觉太复杂有的不符合自己所需要的所以就自己动手下面附上代码HTML:<div class="layui-upload"><button type="button" class="layui-btn" id="test2">多图片上传</button> ...转载 2020-04-13 19:04:21 · 2463 阅读 · 3 评论 -
tp5 部署两套模板(pc 手机端)
我采用的是通过修改template中的view_path的路径在入口文件public下面的index中写下如下方法function isMobile(){ $agent = strtolower($_SERVER['HTTP_USER_AGENT']); $is_pc = (strpos($agent, 'windows nt')) ? true : false; ...转载 2020-04-10 18:14:16 · 535 阅读 · 0 评论 -
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
本人的这段例程是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方法,很多人可能不能正确的实现Excel的导入导出,问题基本上都是phpExcel的核心类引用路径出错,如果有问题大家务必要对路劲是否引用正确进行测试很多文章都有提到关于使用phpExcel实现Excel数据的导入导出,大部分文章都差不多,或者就是转载的,都会出现一些问题,下面是本人研究phpExcel的使用例转载 2015-05-26 18:27:51 · 829 阅读 · 0 评论 -
Thinkphp5.0实战开发二------自动生成目录结构
序言 ThinkPHP5.0 具备自动创建功能,可以用来自动生成需要的模块及目录结构和文件等,自动生成主要调用\think\Build 类库。ThinkPHP5.0中模块文件夹在application下,默认只有index模块,我们可以根据需要自动生成模块,模块文件夹中的内容可以自己在build.php文件进行定义。下面介绍两种自动生成目录结构的方法。方法一:转载 2017-12-25 12:09:22 · 349 阅读 · 0 评论 -
thinkphp5 系统登录的实现
登录功能,是我们几乎开发每个系统都必须的模块。登录功能设计思路用户输入网址展示登录页面 用户输入用户名,密码等点击登录进行信息校验 校验通过之后,记录用户登录信息,跳转指定页面 用户校验失败,提示失败信息 下面功能相关的目录和文件具体功能实现登录页面的设计 为了快速搭建可用、美观的页面,我们采用一个比较成熟的前端框架 Bootstrap。下面我们到 Bootstr...转载 2017-12-28 10:56:25 · 21166 阅读 · 6 评论 -
TP5 paginate()分页后给结果集追加字段和数据
在TP5中,我们常常会需要做数据分页查询,但是只查询得到的数据并不能完全满足我们的需求,我们偶尔会想数据集中追加我们需要的指定的字段和数据。在TP官网中找了很久没招到相关资料,最后去翻开发手册后完美解决。public function index(){ $sql = ""; $list = ""; $pagenumber = 20;//默认分页条数转载 2017-12-30 15:39:50 · 9390 阅读 · 0 评论 -
thinkphp5内置分页功能第二页没有拿到参数,如何解决?
最近在做项目,使用的是thinkphp5(tp5)开发的,使用tp5内置的分页功能。那么,问题来了,我使用paginate函数生成分页时,若没有第二页是没有关系的,但是当出现分页时,结果没有请求参数。也就是说,分页如何添加参数,搜索的时候第二页没有参数了,不可能每次手动添加吧?查找paginate函数细细看paginate函数包括三个参数,如下: /** * 分转载 2018-01-07 10:59:54 · 350 阅读 · 0 评论 -
解决thinkphp5 $this->redirect()跳转不了
namespace app\index\controller;use think\Controller;class Index extends Controller{ public function index() { $this->redirect('/admin/index/index'); }}原创 2022-02-23 11:15:36 · 11369 阅读 · 2 评论 -
接口数据使用ThinkPHP5的自定义分页
tp程序自带了分页的功能,用起来很是方便,特别是默认情况下直接连样式都写好了。非常的省心。但这只是对于数据库操作而言。如果我们想要对请求的接口数据进行分页,那么该如何使用paginate方法呢?知其然我们首先来查看tp数据的分页流程是怎么样的。先写一个数据库分页的代码 $page = Db::name("null") ->paginate(); $pa...转载 2018-03-27 10:30:09 · 3969 阅读 · 1 评论 -
相同下标数组元素相加
$a = [ ['goods_id'=>2,'num'=>4], ['goods_id'=>2,'num'=>5], ['goods_id'=>4,'num'=>6], ['goods_id'=>4,'num'=>6], ['goods_id'=>4,'num'=>6]];$b = [];echo "<pr...转载 2018-11-14 17:29:54 · 798 阅读 · 0 评论 -
tp5 引入阿里云短信验证码
首先呢,登陆阿里云,没有的话去注册账号。 登陆成功后如图所示:产品->精选->短信服务 点击进去 然后如下图所示 点击管理控制台 ------>进入后再短信服务下有个 应用开发 -> 接口调用 然后获取AccessKey 如图所示: AccessKey ID 与Access Key Secret 以后在开发过程中会用到 是重要...转载 2019-02-23 15:37:11 · 590 阅读 · 0 评论 -
TP5调用阿里云短信接口实现发送短信功能
因为项目中需要用到阿里云短信验证码功能,所以就购买了相应的短信包进行测试,以下就是完整代码:use Aliyun\Core\Config; use Aliyun\Core\Profile\DefaultProfile; use Aliyun\Core\DefaultAcsClient; use Aliyun\Api\Sms\Request\V20170525\SendSmsRequ...原创 2019-02-23 15:38:45 · 1431 阅读 · 0 评论 -
Thinkphp5.1 引用第三方包的问题
Thinkphp5.1 导入第三方包的问题一般刚接触tp5.1的,会很不适应,虽然版本号只是比5.0多了0.1,但是差别挺大,废弃了不少方法,官方的教程又很简单,很多东西没说全,在此鄙视一下框架作者,最起码体谅一下小白嘛,搞了好多天才把5.1使用vendor里面引入第三方包的问题搞好,惨啊,在此分享,让后来的小白别走太多弯路。...转载 2019-04-30 14:20:48 · 1111 阅读 · 0 评论 -
ThinkPHP入门教程(一):模块、方法与模板
ThinkPHP入门教程(一):模块、方法与模板9672013-05-09暂无评论这一章开始,我们来实战ThinkPHP。需要知道一些细节模块、方法与模板1.需要知道一些细节写在前面:一定要注意变量名、类名、方法名以及文件名的大小写!在序章里,我们创建了Myweb这个网站,并建立了App这个网站项目。有人可能不明白,为什么App文件夹同级目录转载 2014-05-12 17:26:40 · 1407 阅读 · 0 评论