【thinkphp5上传图片及生成缩略图公共方法(分享)】教程文章相关的互联网学习教程文章

thinkphp 自定义标签【代码】【图】

关于标签的个人理解是 拼凑php 字符串 通过eval()来进行,返回数据。过程应该是这样的,在模板中加入 定义标签为<mytag:list></mytag>,那么在mvc 中解析模板的时候,用正则来匹配 该标签,如果发现符合的标签 就去 寻找mytag 这个类,并实例 调用这个类下的 list方法 进行逻辑运算 返回数据。 在thinkphp 中扩展 自定义标签下面以输出 面包屑 为例:参照官方内置 标签类写法。在任何地方 建一个你的标签类,我这里是 放在Home\Myt...

mvc理念和thinkphp的语法特征 thinkphp引入模板【代码】

mvc即模型(model)-视图(view)-控制器(controller)的缩写控制器很重要,功能性的东西要靠它实现,模型我还没接触到,只知道它对数据库负责,类似一个大控件吧。。。速度。。。一个网站说白了还是给用户看的视图,那么控制器可以控制视图。。。控制器在D:\WWW\myapp\Index\Lib\Action里面入口文件是index.php<?phpdefine(‘APP_NAME‘,‘Index‘); //项目名称define(‘APP_PATH‘,‘./Index/‘); //项目路径define(‘APP_DEBUG‘,T...

ThinkPHP多表联合查询的常用方法

ThinkPHP中关联查询(即多表联合查询)可以使用 table() 方法或和join方法,具体使用如下例所示:1、原生查询示例:复制代码 代码如下:$Model = new Model(); $sql = ‘select a.id,a.title,b.content from think_test1 as a, think_test2 as b where a.id=b.id ‘.$map.‘ order by a.id ‘.$sort.‘ limit ‘.$p->firstRow.‘,‘.$p->listRows; $voList = $Model->query($sql);2、join()方法示例:复制代码 代码如下:$user = new...

ThinkPHP分页用异步来做,玩转分页类!【代码】【图】

具体为什么用异步来做分页我就不多说了!用异步来做分页,主要还是看分页类怎么玩!方便管理,还是把Ajax分页作为一个工具来使用:同样新建工具类:多次尝试,最终修改好的分页类是这样的:(我自己使用还是比较爽的)<?php namespace Components; class AjaxPage {public$firstRow; // 起始行数public$listRows; // 列表每页显示行数public$parameter; // 分页跳转时要带的参数public$totalRows; // 总行数public$totalPages; //...

thinkPHP中省市级联下拉列表【代码】【图】

公共函数放置位置common文件夹下common.php文件(此段代码也可放置在要使用的控制器中)封装的下拉列表函数代码:/*** 根据列表拼装成一个下拉列表 ADD BY CK* @param $list :数据源* @param $value :显示的option的value值,下标 例:$list[‘id‘]中的id* @param $text :显示的option的text值 例:$list[‘name‘]中的name* @param int $selectIndex : 选中的索引项* @param bool $haveFirst:是否有第一项如‘<option value="0...

ThinkPHP3.1新特性之字段合法性检测详解【代码】

ThinkPHP3.1版增加了表单提交的字段合法性检测,可以更好的保护数据的安全性。这一特性是3.1安全特性中的一个重要部分。表单字段合法性检测需要使用create方法创建数据对象的时候才能生效,具体有两种方式:一、属性定义可以给模型配置insertFields 和 updateFields属性用于新增和编辑表单设置,使用create方法创建数据对象的时候,不在定义范围内的属性将直接丢弃,避免表单提交非法数据。insertFields 和 updateFields属性的设置...

ThinkPHP模板中使用<volist>嵌套超过三层时出错-解决方法

当循环到第四层时后使用foreach循环。可解决volist循环超过三层时报错问题<volist> <volist> <volist> <!--当循环超过三层时,再使用<volist></volist>就会报错,所以使用<foreach></foreach>--> <foreach name="a" iten="vo"> {$vo} </foreach> </volist> </volist></volist>本文出自 “记录点滴的小知识” 博客,请务必保留此出处http://anbaojia.blog.51cto.com/9...

thinkphp 控制器controller完成数据验证,validate()、create()【代码】

public function person_pic_post(){ $uid = $this->userid; $rules = array( //array(验证字段,验证规则,错误提示,验证条件,附加规则,验证时间) array(‘acard‘, ‘require‘, ‘身份证正面不能为空!‘, 1 ), array(‘bcard‘, ‘require‘, ‘身份证反面不能为空!‘, 1 ), ); $users_model=M("persion_info"); if($data = $users_model->validate($rules)->create()){ $data[‘ut...

ThinkPhP中model自动验证 $_validate $_auto【代码】

1 <?php2class UserModel extends RelationModel{3 4 5/**自动验证**/ 6protected$_validate = array( 7/**array([验证字段],[验证规则],[错误提示],(验证条件(默认为存在字段就验证)),(附加规则),(验证时间))**/ 8array(‘username‘,‘‘,‘该用户名已经存在!‘,1,‘unique‘),9array(‘password‘,‘5,12‘,‘密码过短,请重新输入!‘,1,‘length‘),// 自定义函数验证密码格式 10array(‘repassword‘,‘password‘,‘两...

ThinkPHP远程调用模块的操作方法 URL 参数格式【代码】

* 远程调用模块的操作方法 URL 参数格式 [项目://][分组/]模块/操作 * @param string $url 调用地址 * @param string|array $vars 调用参数 支持字符串和数组 * @param string $layer 要调用的控制层名称 * @return mixed演示案例:http://www.yixingmuban.com/ function R($url,$vars=array(),$layer=‘‘) {$info = pathinfo($url);$action = $info[‘basename‘];$module = $info[‘dirname‘];$class = A($modul...

thinkphp3.2.2前后台公用类架构问题分析

本文实例分析了thinkphp3.2.2前后台公用类架构问题。分享给大家供大家参考。具体分析如下:3.13之前好多项目都使用前后台公用类,在lib/action下创建Baseaction做为公共继承类,发现3.2.2里面很多人都用A调用,这样每用一次要用A调用,好麻烦,小编特意偷懒。亲测使用以下方法解决。感兴趣的朋友可以对其进行加强改进!thinkphp3.2.2的这么创建Application/Common/Controller/BaseController.class.php复制代码 代码如下:<?php nam...

夺命雷公狗ThinkPHP项目之----企业网站21之网站前台二级分类显示名称(TP自定义函数展示无限极分类)【代码】【图】

我们实现网站二级分类的显示的时候,先要考虑的是直接取出顶级栏目,控制器代码如下所示: <?php namespace Home\Controller; use Think\Controller; class IndexController extends Controller {publicfunction index(){$mod = M("Category");$where[‘cate_pid‘] = ‘0‘;//这样写可以达到一种防SQL注入的效果$cate = $mod -> where($where) -> select(); //获取顶级栏目为0的结果集$this -> assign(‘cate‘,$cate);//dump($ca...

thinkphp 中where 多条件查询

今天做一个数据的查询$products=M(‘products‘);$prodName=isset($_POST[‘prodName‘])?I(‘post.prodName‘):‘‘;$products->join(‘left join prods on prods.prodId = products.prodId‘) ->limit ( $page->firstRow . ‘,‘ . $page->listRows ) ->where(‘proTypeId=‘.$proTypeId)这个时候我需要对数据表prods进行一个模糊匹配于是突发奇想在$map[‘prodName‘]=array(‘like‘,"%$prodNam...

ThinkPHP公共配置文件与各自项目中配置文件组合的方法

本文实例讲述了ThinkPHP公共配置文件与各自项目中配置文件组合的方法。分享给大家供大家参考。具体实现方法如下:在使用ThinkPHP时,在布局目录时,常使用的是单个入口文件对应一个项目目录,但是这样在写配置文件时,在各自的配置文件中,经常会使用重复的配置项,所用这时就会将公共的配置项放在一个公共的目录下。具体实现方法:使用配置文件的特性return array();可以在各自项目中的配置文件中这样定义:复制代码 代码如下:$co...

thinkPHP3.2 进行Excell导出

我们首先下载一个第三方的一个扩展包PHPExcel包,下载地址http://phpexcel.codeplex.com/引入到到thinkPHP里的第三方扩展Library/Vendor/PHPExcel.代码如下: 公共方法:/*导出日志的excel方法*/ function exportExcel($expTitle,$expCellName,$expTableData){$xlsTitle = iconv(‘utf-8‘, ‘gb2312‘, $expTitle);//文件名称$fileName = $expTitle.date(‘_YmdHis‘);//or $xlsTitle 文件名称可根据自己情况设定$fileName = ic...

THINKPHP5 - 相关标签