随笔分类 - ThinkPHP
摘要:1、文件上传三步走 ① 实例化Upload文件上传类 ② 设置相关属性(文件上传格式、大小、路径) ③ 调用upload方法完成文件上传 调用add方法实现添加操作
阅读全文
摘要:highcharts实现统计图效果 ① 根据需求确定需要使用的案例图 把这个界面的html模板文件复制出来,放入./Application/Admin/View/User下改名为chart.html ② 在index.html页面中定义统计链接 ③ 在控制器中定义chart方法,实现统计图效果 ④ 更改chart.html模板 运行效果:
阅读全文
摘要:数据分页 1、数据分页七步走 ① 实例化模型 ② 通过count函数获取数据表中的总记录数 ③ 实例化Page分页类 ④ 调用show方法显示分页链接 ⑤ 调用limit方法实现分页程序 ⑥ 通过assign方法分配变量到模板文件 ⑦ 通过display方法显示输出模板内容 2、具体实现 1)在User控制器中的index方法实现分页七步走 2)在模板页面中调用相关数据
阅读全文
摘要:验证码功能 ① 在Public控制器中定义verify方法 ② 设置验证码相关参数 codeSet:显示的字符串 useZh:是否使用中文验证码 zhSet:显示的中文字符串 useImgBg:是否使用图片背景 fontSize:字体大小 useCurve:是否使用混淆线 useNoise:是否使用杂点 length:验证码采用多少个字符 fontttf:使用的字体样式 ③ 中文验证码...
阅读全文
摘要:文件载入功能 1)项目Common文件载入 在./Application/Common/Common文件夹下创建funciton.php文件,当系统运行时会自动加载该function.php文件。 在任何前后台模块下都可以使用tree函数,如下图所示: 2)自定义文件载入 路径:./Application/Common/Common/func.php文件 在config.php配置文件中,...
阅读全文
摘要:代码调试功能 1)APP_DEBUG,显示详细错误 只需要在入口文件中,添加define('APP_DEBUG',true); 2)调试SQL语句错误 $mode->getLastSql() :获取最后一条执行的SQL语句 3)使用dump函数对变量进行格式化 4)使用SHOW_PAGE_TRACE开启页面追踪
阅读全文
摘要:实用项 1、会话控制技术 早期的http请求都是无状态的,所以服务器端没有办法追踪用户的运行轨迹,所以为了记录用户的运行轨迹而出现了会话控制技术。 cookie技术(实体会员卡) session技术(虚拟会员卡,以手机号码作为参考) 1)session技术 session('name','value'); :设置session $value = session('name'); :获取sessi...
阅读全文
摘要:连贯操作 案例:实现职员管理功能 ① 设计数据库 ② 创建UserController控制器 ③ 定义add方法 ④ 构建add.html模板到./Application/Admin/View/User,并更改链接地址 ⑤ 定义左侧导航链接 ⑥ 时间选择插件 1)导入js文件 2)在input文本框中添加onfocus事件 ⑦ 定义addOk方法实现接收与添加数据 首先...
阅读全文
摘要:AR模式 在ThinkPHP框架中,一共存在两种操作模式:ORM模式与AR模式 ORM模式:① 实例化模型 ② 创建数据对象组装数组 ③ 调用相关方法执行相关操作 AR模式:① 实例化模型 ② 把数据映射到模型属性 ③ 调用相关方法执行相关操作 1、AR模式 表映射到类 字段映射到属性 记录映射到对象 使用PHP代码模拟AR模式 ① 设计数据库 ② 创建UserModel.class.ph...
阅读全文
摘要:表名操作 在实际项目开发中,一共有三种情况会用到表名操作。 1、表前缀(养成习惯) 在实际项目开发中,如果一个数据库中要同时存放多个项目信息,为了以示区分每一个项目的数据表,我们可以使用表前缀原则: think_oa 办公:oa_ think_shop 商城:shop_ think_cms 内容管理系统:cms_ 2、表名操作(属性) ① tableName 表名操作 在实际项目开发中,一...
阅读全文
摘要:字段映射 1、为什么需要字段映射 在实际项目开发中,如果想实现数据的添加等操作,必须有一个前提:表单数据中的表单名称必须与数据表的字段名称一致,否则在创建数据对象时,会导致数据插入异常,而且这样也容易暴露数据表的字段信息。 部门表分析:Dept控制器,表名可能是:前缀_dept 分析表单:部门名称对应name 上级部门对应pid 排序对应sort ...
阅读全文
摘要:ThinkPHP中的模型 1、为什么要创建数据对象 案例:使用ThinkPHP完成部门管理 ① 设计数据库 ② 创建Dept控制器 路径:./Application/Admin/Controller创建控制器 规则:DeptController.class.php 编程程序三步走 ③ 复制add.html模板到./Application/Admin/View/Dept文件夹,更改模板路径 ...
阅读全文
摘要:创建数据对象 1、为什么要创建数据对象 在实际项目开发中,经常要接收表单数据,如果表单数据过多,我们在接收过程中就需要通过$_POST进行多次接收,为了简化以上操作,我们就可以使用数据对象来解决这个问题。 ThinkPHP可以帮助你快速地创建数据对象,最典型的应用就是自动根据表单数据创建数据对象,这个优势在一个数据表的字段非常之多的情况下尤其明显。 2、模拟创建数据对象 ① 更改add.ht...
阅读全文
摘要:定义字段 1、为什么需要定义字段 在每次实例化模型时,系统都会自动执行以下代码: 调试界面如下图所示: 由上图可知,我们每次调用模型进行实例化时,系统都会自动执行SQL语句:show columns,这条语句代表分析模型对应的数据表的表结构,在实际项目开发中,这个语句是非常耗时的,而且其对数据库的开销也非常大,那么在实际开发时最好缓存数据表的字段信息。 2、字段缓存 字段缓存保存在Run...
阅读全文
摘要:ThinkPHP中的模型 1、什么是模型(Model) 模型表示企业数据和业务规则,实际项目开发中,主要实现与数据库进行操作。 2、模型的定义规则 模型类的命名规则是除去表前缀的数据表名称,采用驼峰法命名,并且首字母大写,然后加上模型类的关键词Model,再加上类文件后缀.class.php 案例:实现移动办公自动化系统的组织结构功能 ① 设计数据库db_think ② 设计数据表结构(tk_d...
阅读全文
摘要:ThinkPHP中的内置标签 1、内置标签分类 闭合标签 开放标签 2、包含文件标签 主要功能:实现对文件的包含(类似于require或include) 基本语法: 特别注意:include标签中模板文件的路径是基于项目的入口文件(index.php)位置。 案例:实现项目首页功能 ① 在View视图模板中,创建一个Public文件夹,作为公用文件夹 ② 创建两个公用模板(header...
阅读全文
摘要:ThinkPHP中的视图 1、模板注释 在实际项目开发中,经常要使用注释功能,如果是ThinkPHP框架,则可以在模板文件中使用如下方式进行注释: {// 注释内容 } :单行注释 {/* 注释内容 */ } :多行注释 示例代码: 运行以上代码可知:ThinkPHP框架中的模板注释属于服务端注释,并不会显示输出在客户端浏览器。 2、fetch获取模板内容 在实际项目开发中,如果我们只想...
阅读全文
摘要:综合案例-整合办公系统后台模块 1、配置虚拟主机(如www.think.com) 2、配置hosts文件并重启Apache服务器 3、复制ThinkPHP核心文件到项目的目录中(如think目录) 4、创建Zend工程 5、创建index.php入口文件(编写四步走) 6、划分项目前后台模块 设置配置文件(./Application/Common/Conf/config.php) 7、...
阅读全文
摘要:ThinkPHP中的视图View 1、什么是视图View 所谓的视图就是用户可视化操作界面。 2、视图View组成 view类(模板引擎类似Smarty) 模板文件(html模板) 3、视图的定义 默认视图的定义规则: ./项目目录/Home或Admin模块下的View文件夹/Public控制器名称/login操作方法.html ① 在控制器中定义相关操作方法,如下图所示: ② 在./Appl...
阅读全文
摘要:ThinkPHP控制器Controller 1、什么是控制器 在MVC框架中,其核心就是C(Controller)控制器。主要用于接收用户请求,处理业务逻辑。 2、控制器的定义 在一个ThinkPHP系统中,其可以分为多个模块(如Home前台模块,Admin后台模块等),我们在定义控制器时都需要定义在相应的模块内。定义规范如下: 控制器名称(首字母大写)+Controller(关键词)+.clas...
阅读全文

浙公网安备 33010602011771号