ThinkPHP
ThinkPHP
dancheng_work
在时间允许的情况下,源码是最好的开发文档。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
文本编译器ueditor的使用
1.首先下载文本编译器ueditor 首先在ueditor官网下载一个编译器 2.然后再使用的html中引入js文件包 ueditor.config.js ueditor.all.min.js zh-cn.js 3. html代码中要有 4. 引入js代码 UE.getEditor('content', {initialFrameWid原创 2017-12-24 20:20:01 · 466 阅读 · 0 评论 -
tp5 数据查询和分页
1. 新建一个model类 namespace app\admin\model; use think\Model; class Admin extends Model{ } 2. 调用model类进行分页 public function lst(){ $list = AdminModel::paginate(3); $this->assign('list', $lis原创 2017-12-24 20:16:57 · 6667 阅读 · 1 评论 -
tp5数据验证及验证场景详解
1. 在接收数据时直接进行验证: public function add(){ if(request()->isPost()){ $validate = new Validate([ 'username' => 'require|max:25', 'password' => 'require|max:32',原创 2017-12-24 20:13:08 · 9375 阅读 · 0 评论 -
tp5中的读取器和修改器
读取器 设置读取器内容: 调用: 当$log对象读取ip的时候,或默认调用getIpAttr方法,然后执行getIpAttr方法中的代码; 修改器 修改器设置 public function setUserIdAttr($value){ echo $value; } //修改器 $log = Log::get(1); $log->user_id =原创 2017-12-24 20:08:59 · 3854 阅读 · 0 评论 -
tp5中的模型关联
controller调用model层: 利用model对数据进行存储 1. 最简单的方法: public function testModel(){ $log = new Log; $log->user_id = 123; $log->ip = '10.10.10.10'; $log->save(); } 2. 数组的方法: $logA原创 2017-12-24 20:03:26 · 4253 阅读 · 0 评论 -
tp5的数据查询语言
1.查询一句 $result = Db::name('log') ->where('id', 2) ->find(); 2.按条件查询多条语句 //多条件查询 //中间参数可以写成 >= in [4,5,6,7] 'between' [5,8] $result = Db::name('log') ->where('id', '>=', 2) ->sele原创 2017-12-24 19:57:43 · 8406 阅读 · 0 评论 -
thinkphp5的数据库操作
1. 数据库配置 2. query execute原生态sql语句 增删改查 $result = Db::execute('insert into log(user_id, ip) values(1, 11231)'); dump($result); $result = Db::query('select * from log'); echo ''; var_dump($原创 2017-12-24 19:49:42 · 744 阅读 · 0 评论 -
Thinkphp3.2对于URL访问模式PATHINFO 模式导入css,js文件冲突问题详解
我的目录结构: 原本这样导入css,js文件是个很方便的问题,但是遇到了PATHINFO这个奇葩的模式,却是个难题。 首先大家第一印象都是./Application/Admin/Public/css/User_Login.css 这个路径在浏览器的URL上是和index.php同一个路径的,即http://localhost/first/Application/A原创 2017-12-12 20:17:02 · 1065 阅读 · 0 评论 -
tp的命名空间
当开发大型项目的时候,可能需要成千上万的文件,面向对象通过命名空间解决这个问题的。PHP命名空间是PHP5.3以后出现的。 命名空间中可以出现:类,函数,常 只有const定义的常量命名空间才有效。命名空间的名字必须符合PHP命名的规则。 命名空间的声明和使用: <?php namespace China; const nation = '中国'; function getIn原创 2017-08-06 16:42:54 · 511 阅读 · 0 评论 -
TP中的session和cookie
session(‘name’) 获取名字是name的会话 session(‘name’, ‘李白’) 将李白赋给name会话 session(‘name’, null) 清空name的会话 session(null) 清空所有会话 --------------------------------------- cookie(‘name’) 获取名字是nam原创 2017-08-06 16:40:09 · 993 阅读 · 0 评论 -
thinkphp分页处理
分页类存放位置:Think\Page.class.php public function showlist(){ $model = M('goods'); $recordcount = $model->count(); //第一个参数是总记录数,第二个参数是页面大小 $page = new Page($recordcount, 10); $startno原创 2017-08-06 16:39:33 · 327 阅读 · 0 评论 -
thinkphp生成缩略图
缩略图类存在的位置:Think\Image.class.php //生成缩略图 $img = new Image(); //1、打开图片 $img->open(原图地址); //制作缩略图 $img->thumb(200,300,6); //3、保存 $img->save(新图地址);原创 2017-08-06 16:37:40 · 464 阅读 · 0 评论 -
thnkphp文件上传操作
THinkPHP自带了文件上传的类,位置Think/Upload.class.php thinkphp上传图片代码: if($_FILES['goods_image']['error'] == 0){ $config = array( 'rootPath' => './Application/public/uploads/', ); $upl原创 2017-08-06 16:36:31 · 386 阅读 · 0 评论 -
thinkphp生成验证码
TP框架自带的验证码类,位置:Think/verify.class.php tp可用字体: TP中生成验证码的函数: public function verifyImg(){ $config = array( 'imageW' => 120, 'imageH' => 30, 'fontSize' => 15,原创 2017-08-06 16:34:24 · 844 阅读 · 0 评论 -
ThinkPHP简介
ThinkPHP 按照MVC思想开发的一个框架,也叫TP框架。 优点: 1、快速,稳定的搭建系统程序 2、可以使开发人员经历集中在业务逻辑上,不需要关系程序的底层架构 3、可以节省大量代码,后期的升级、维护、优化十分方便 4、有利于团队的代码风格统一。 相关的一些框架 1、zend framework zend公司开发的官方的框架,功能很强大,重量级框原创 2017-07-26 20:38:09 · 704 阅读 · 0 评论 -
thinkphp收集表单信息,进行添加修改
1、原始收集表单方法 $data['goods_name'] = $_POST['goods_name']; $data['goods_category_id'] = $_POST['goods_category_id']; $data['goods_price'] = $_POST['goods_price']; $data['goods_introduce'] = $_POST['goods原创 2017-08-05 21:05:44 · 1310 阅读 · 0 评论 -
thinkphp的几种跳转方法
1、$this->redirect('跳转链接', array(), 停留时间, '消息'); 2、成功跳转 $this->success('消息', '跳转链接', 停留时间); 3、失败跳转(没有写地址,从哪来就往哪去) $this->error('消息');原创 2017-08-05 20:55:09 · 1749 阅读 · 0 评论 -
thinkphp表现层中的路径问题
学习ThinkPHP时遇到了一个很惨的问题的,就是在一个html页中,css文件路径利用相对路径配置的,在pathinfo模式下可以导入,但是在普通模式下就导入不进来了。于是我在网上找了很多关于url模式配置的文章和thinkphp显示层样式配置的文章,可是还是没有找到很好的解决办法。于是我就找了api文档,仔细了解了一下路径配置常量问题 然后想到了一个很硬的方法,如下: 这样无论用哪种模式进原创 2017-08-05 16:05:44 · 449 阅读 · 0 评论 -
thinkPHP的条件查询、动态查询和聚合函数
条件查询 having 和 where 的区别 区别一: where后面跟的字段必须在数据表中有 having后面跟的字段必须在查询出的数据集中有 区别二: where * from 表 where 条件 group by 分组 1、按主键查询 $list = M('goods')->select(2); 返回一条主键值为2的数据 2、查询编号是2-6的记录原创 2017-08-05 13:47:19 · 1073 阅读 · 0 评论 -
thinkPHP的数据添加、修改、删除
数据添加 1、通过关联数组的方法添加 $data = array( 'goods_name' => '手机', 'goods_price' => 2121 ); //返回值,如果第一列为自动增长列,则返回编号,不是自动增长,成功了返回1,错误返回0 echo M('goods')->add($data); 2、通过AR(active record)方式来添加 $goo原创 2017-08-05 13:53:12 · 2285 阅读 · 2 评论 -
ThinkPHP链接数据库
在配置文件中做如下配置便可链接数据库 <?php return array( //'配置项'=>'配置值' 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => 's原创 2017-07-28 09:59:46 · 489 阅读 · 0 评论 -
TP语法
判断: PHP中的运算符 对应的TP中的运算符 英文全称 lt Less than > gt Greater than == eq equal >= eqt Equal or greater than原创 2017-07-28 09:55:16 · 1045 阅读 · 0 评论 -
TP框架的配置文件
惯例配置:ThinkPHP/conf/convention.php 应用配置:Application/Common/conf/config.php 调试配置:Application/Common/conf/debug.php 模块配置:Application/Home/Conf/config.php 加载顺序: 惯例配置->应用配置->调试配置->模块配置 优先级: 模块原创 2017-07-28 09:27:55 · 541 阅读 · 0 评论 -
TP的空操作、空控制器、跨控制器调用
一、空操作 系统在找不到请求的方法的时候,会定位到__empty()方法处理,利用这个机制,我们可以对用户请求的不存在的所有操作进行统一。 二、空控制器 当系统找不到控制器,会定位到空控制器上EmptyController 三、跨控制器调用 ManagerController中的方法 public function managertest1(){原创 2017-07-28 09:16:26 · 510 阅读 · 0 评论 -
TP系统常量
当前请求地址:__SELF__ 当前分组:__MODULE__ 当前控制器:__CONTROLLER__ 当前方法:__ACTION__原创 2017-07-28 09:11:18 · 794 阅读 · 0 评论 -
定义和调用TP的模板
所有的模板都要放在view文件夹下。 规则:一个控制器对应一个文件夹,一个方法对应一个文件 TP模板调用:原创 2017-07-28 09:10:28 · 534 阅读 · 0 评论 -
ThinkPHP的路由
1、普通模式 2、pathinfo模式 http://网址/入口文件(index.php)/分组(平台)/控制器/方法 比如:http://localhost/index.php/home/index/index 3、rewrite()重写模式 4、兼容模式 参数s=/分组/控制器/方法原创 2017-07-26 20:48:23 · 432 阅读 · 0 评论 -
如果搭建ThinkPHP的环境
在首页index.php中定义: 当创建好后,出现欢迎界面,则说明系统自动生成ThinkPHP的项目目录,并写入了初始的控制器和方法: 自动生成的目录: 创建控制器 1、控制器存放在Controller文件夹中 2、命名规范:控制器名称 + Controller.class.php 3、类名和文件的名称一致 4、类名用帕斯卡命名法 5、尽量区原创 2017-07-26 20:43:23 · 645 阅读 · 0 评论
分享