thi开发大型商城项目实战视频下午内容_第1页
thi开发大型商城项目实战视频下午内容_第2页
thi开发大型商城项目实战视频下午内容_第3页
thi开发大型商城项目实战视频下午内容_第4页
thi开发大型商城项目实战视频下午内容_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、php 框架真实项目开发步骤:1.多人同时开发项目,协作开发项目、分工合理、效率有提高(代码风格不一样、分工不好)测试阶段上线运行.6.对项目进行维护、修改、升级(单个人维护项目,十分项目稳定的运行阶段,代码风格不一样)项目停止运行(旧项目的已经全部离职,新人开发新项目)问题:.多人开发项目,分工不合理,(html代码风格不一样,后期维护十分phpmysql)项目生命周期十分短,项目生命没有延续性,造成项目不能很好适应客户需求,牵一发而动全身。浪费、浪费其他相关框架1. zendframeworkzend php 语言公司发布的框架,重量级(功能多)2. yii3.

2、 CI美国开发的框架,xue qiang, qiang,重量级框架,纯 OOP 框架CodeIgniter轻量级框架,开发速度快,部署灵活4.5.6.cakephpsymfony外国框架,重量级,速度慢外国重量级框架轻量级框架,国人框架,入门容易什么框架:一堆代码的集合,里边有变量、函数、类、常量,里边也有许多设计模式 MVC、AR数据库、单例等等。框架可以节省我们 50-60%的工作量,我们全部精力都集中在业务层次。为什么使用框架ll框架可以帮组我们快速、稳定、高效搭建程序系统该系统由于框架的使用使得本身的维护性、灵活性、适应客户需求方面得到最大化的增强。l使用框架的过程中可以使得我们的注意

3、力全部集层架构。务层面,而无需关心程序的底【使用框架】.cn3.2 版本【框架项目部署】shop 商城项目bookcar 汽车销售系统三个项目可以使用一个公共的 tp 框架。步骤:1.创建一个文件 index.php2.项目自动创建目录3.文件的同时系统会自动把对应的文件创建出来【器和对应创建】【路由】通过 url 地址 get 参数找到指定的器,并进行对应器&a=调用请求http:/index.php?m=模块名称&c=以上 url 地址信息代码不够优雅、不安全。tp 框架url 地址可以由以下四种.http:/index.php?m=XX&c=XX&a

4、mp;a=XX基本get 模式路径模式 pathinfo rewrite 重写模式兼容模式http:/index.php/模块/器/操作http:/模块/器/操作http:/index.php?s=/模块/器/具体 url 地址模式设置(配置文件/Conf/convertion.php)URL_M=0/1/2/3分别代表四种 url 地址模式config.php 是我们当前项目的配置文件,我们可以通过修改该文件达到配置变量的目录这个文件在系统运行过程中会覆盖 convertion.php 的配置变量include “convertion.php”;include “config.php”;后引

5、入的文件要把先引入的文件配置变量给覆盖掉我们系统有兼容 4 中url 地址模式的使用系统有的时候会自动创建 url 地址,它会根据当前模式进行 url 地址创建使用U();创建 url 地址在文件 index.php 调整当前模式为开发调试模式:通过 url 地址模式我们学习到了以:配置变量 conversion.php、当前应用配置变量 config.php) ”)根据参数和 url 模式 创建对应的 url 地址1.2.3.我们学习到了配置变量(快捷函数 U(“模块/器/把框架的模式调整为开发调试模式【开发、生产模式】开发调试模式:系统需要加载 24 个文件 index.phpdefine

6、(“APP_DEBUG”,true);生产模式:系统只需要加载很少的 7 个文件index.phpdefine(“APP_DEBUG”,false);节省了许多文件的开发、关闭的系统开销,节省观察系统运行过程中生成的日志信息:1.做变量配置,convertion.php , config.php2.tp 框架配置变量:convertion.phpBehavior 行为文件程序灵活设置Behavior行为:/Library/Behavior/*$option 里边的信息是可以直接通过 config.php 进行修改的器调用视图 view 模板】【器视图APP_DEBUG = true;调试模式错

7、误信息显示更详细m模型view 视图器器和模板的通常:在 view 目录通常会有一个与器标志一样的目录,里边有具体模板文件例如 GoodsController.class.php器对应的模板文件在 view 目录有 Goods 目录,里边都是 Goods【视图模板与项目进行整合】1. 引入静态代码2. 引入 css、image、jsa)以上 3 样东西,浏览器需要单独的 http 请求b)引入 css 的时候,以 User器标志作为当前目录,显然不行以上目录设置不利于后期维护,例如其中的目录有修改,就需要全部都修改,有很多重复劳动优化后:利用常量把路径给定义好,后期只维护一个常量即可tp 框架

8、默认引擎的常量使用模板与 tp 框架整合.5.引入静态代码引入 css、img、js 文件在文件地方把 css、img、js 的路径设置常量在模板中通过常量获得具体的 css、img 等文件信息(后期重复步骤) 把 css 文件本身的图片路径设置正确(获得图片的相对位置是本身css 文件)【url 地址大小写设置】在 config.php 里边对 url 大小写敏感进行设置引入文件:include “hello.php”;include(“Hello.php”); 实际都会把指定文件找到 hello.phptp 框架本身个不同文件做了额外设置 :include (“hello.p

9、hp”)include “Hello.php”;表示需要引入两总结:.创建应用 index.php文件创建器和视图模板器和真实模板进行整合(cssimgjs)配置文件:a)b)c)convertion.php config.php config.php作用)shop/Common/Conf/config.php (所有分组模块都起作用)shop/Home/Common/Conf/config.php(Home 分组模块起【空操作和空器使用】空操作:就没有指定的操作空http:/ http:/http:/器:没有指定器/index.php/Home/User/login/index

10、.php/Home/User/hello 空操作/index.php/Home/login空器空操作:一般处于安全考虑不给用户提示任何错误信息“空操作”本质意思:一个对象(在 OOP 里边,对象调用本身不器)调用本身不的,处于用户体验比较好的角度考虑,我们可以在类里边制作一个魔术:function call();普通器父类的位置:空操作有两种解决方案: 在对应的器里边制作一个,名称为”_empty”,这个器的空操作都会自动执行该。(推荐使用) 给空操作的名称制作一个同名的模板出来,系统会自动调用普通器普通器后期代码优化样子HomeController.class.php_empty()Cont

11、roller.class.php空器http:/index.php/Home/tianjin/login空器:在实例化器对象的时候,没有找到指定的类什么时候实例化熟记文件:index.php/器对象:/Library/Think/App.class.php文件php框架文件/Library/Think/Think.class.php框架文件/Library/Think/App.class.php框架应用文件App.class.php 内部器对象创建,以及对象调用指定的呈现内容。快捷操作:空器处理方案:可以再制作一个器,名称 EmptyController.class.php在该器内部其实只需要

12、制作一个_empty()即可。【项目分组】系统有前台用户操作界面系统还有供公司内部使用维护平台两者在使用的过程中就是对“器”、“视图模板”、“m模型”的操作开发方便,及代码部署更加合理,我们的在起,要在物理结构上给器、view 视图等前文件不要混http:/index.php/Home/器/操作Home器及制定操作http:/index.php/Admin/器/操作Admin 分组的器和操作【登录页面与框架整合】器:ManagerController.class.php function login()为静态目录创建常量【品字形框架页面搭建】器:IndexController.class.ph

13、p操作:head()left()right()index()注意:frame 的 src 属性通过路由进行设置获得系统常量信息以上错误信息是 tp 框架给我们封装好的错误信息,我们更喜欢看我们传统的错误信息调整文件/Library/Think/Think.class.php 内容如下:index.html 模板页面frameset 模板frame(src=路由地址请求分支页面 Index/left)IndexController.class.php function left()display();IndexController.class.php functionindex() displa

14、y()把以上三行给注释掉,以后看到的错误就是传统的错误信息行为:/Library/Behavior/ContentReplaceBehavior.class.php 进行的替换【跨器调用】一个跨例器在执行的时候,可以实例化另外一个器调用可以节省我们代码的工作量,并通过对象其指定。10 个页面,都要现实指定的数据信息显示。比如我们的“会员数目有 200 万”,这个信息需要在 10 个页面都显示这个数据是通过 UserController.class.php 里边额number()给出来的现 在 商 品 列 表 页 面 也 需 要 显 示 200 万 会 员 数 目 信 息 , 那 么 原 则 上

15、 就 是GoodsController.class.php 里边也有一个number()专门获得会员数目的如果许多页面都需要显示 200 万的会员数据,则许多器都需要有 number()。如果大家都能实例化 User器,并调用它的 number(),则会节省许多重复劳动。/Common/functions.php系统函数库:A(“模块/R(模块/器标志”) 实例化器对象器标志/操作)实例化对象同时调用指定【框架执行流程分析】tp 框架内部代码集成:面向过程和 OOP 面向对象1. index.php文件2./php在php5.3 版本以后设置常量有两种方式:const name = value;作用域根据当前命名空间决定define()作用域全局 定义了许多常量 引入文件 Think.class.phpThink:start();3./Library/Think/Think.class.phpstatic function start() 引入系统文件引入配置文件如果是生成模式,还会生成 commonruntime.php 文件如果是第一次使用系统,还会自动创建对应的应用目录App:run();4./library/Think/App.class.php static function run()App:init();路由/路由,把模块、器、赋予常量/MODULE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论