PHP视频教程:thinkphp基础+thinkphp项目实战20
- 格式:ppt
- 大小:1.79 MB
- 文档页数:69
PHP学习⿊马视频28天PHP零基础⼊门到精通教程(P1基础6天)笔记1笔记相关信息:标题28天PHP零基础⼊门到精通教程(P1基础6天)视频地址章节P1-P4标签PHP简介动静态⽹站访问流程其他F:\HTML_前端\PHP\B站⿊马BV18x411H7qD\Day01 搭建环境.docxPHP简介什么是PHPPHP定义:⼀种服务器端的 HTML 脚本/编程语⾔,是⼀种简单的、⾯向对象的、解释型的、健壮的、安全的、性能⾮常之⾼的、独⽴于架构的、可移植的、动态的脚本语⾔。
是⼀种⼴泛⽤于 Open Source(开放源代码)的尤其适合 Web 开发并可以嵌⼊ HTML 的多⽤途脚本语⾔。
它的语法接近 C,Java 和 Perl,⽽且容易学习。
该语⾔让 Web 开发⼈员快速的书写动态⽣成的⽹页。
PHP前⾝:Personal HomePage,个⼈主页,使⽤Perl语⾔开发的⼀种写个⼈主页的语⾔PHP:PHP Hypertext Preprosessor,php超⽂本预处理器,底层使⽤C语⾔⽹站Website的中⽂名称是⽹站,是指在互联⽹上,根据⼀定的规则,使⽤HTML、PHP等代码语⾔制作的⽤于展⽰特定内容的相关⽹页的集合,有可供管理⼈员操作的后台及⽤户使⽤的前台。
简单地说,Website是⼀种通讯⼯具,就像布告栏⼀样,⼈们可以通过Website 来发布⾃⼰想要公开的资讯,或者利⽤Website来提供相关的⽹络服务。
⼈们可以通过⽹页浏览器来访问Website,获取⾃⼰需要的资讯或者享受⽹络服务。
静态⽹站特点1.⽹页内容⼀经发布到⽹站服务器上,⽆论是否有⽤户访问,每个静态⽹页的内容都是保存在⽹站服务器上的,也就是说,静态⽹页是实实在在保存在服务器上的⽂件,每个⽹页都是⼀个独⽴的⽂件;2.静态⽹页的内容相对稳定,因此容易被搜索引擎检索;3.静态⽹页没有数据库的⽀持,在⽹站制作和维护⽅⾯⼯作量较⼤,因此当⽹站信息量很⼤时完全依靠静态⽹页制作⽅式⽐较困难;4.静态⽹页的交互性较差,在功能⽅⾯有较⼤的限制。
第1篇一、基础题1. Think PHP 的全称是什么?它有什么特点?- 答案:Think PHP 的全称是 ThinkPHP,它是一款免费开源的PHP框架。
其特点包括易用性、快速开发、高性能、安全性、可扩展性等。
2. 简述 Think PHP 的 MVC 架构。
- 答案:Think PHP 采用 MVC 架构,即模型(Model)、视图(View)、控制器(Controller)。
模型负责数据操作,视图负责展示,控制器负责处理请求和响应。
3. 什么是路由?在 Think PHP 中如何配置路由?- 答案:路由是将用户请求映射到控制器的方法。
在 Think PHP 中,可以通过配置 `route` 文件或使用 `Route::rule()` 方法来定义路由。
4. 什么是中间件?在 Think PHP 中如何使用中间件?- 答案:中间件是一种拦截器,用于在请求处理过程中执行特定的操作。
在Think PHP 中,可以通过注册中间件来使用它,例如 `App\ Middlewares\ CheckLogin`。
5. 简述 Think PHP 的自动加载机制。
- 答案:Think PHP 使用 PSR-4 标准的命名空间自动加载规范,通过`composer` 自动加载类库,同时支持类名缩写和自动加载插件。
二、进阶题6. 在 Think PHP 中,如何实现数据库操作?- 答案:在 Think PHP 中,可以通过 `Db` 类实现数据库操作。
例如,使用`Db::table('table_name')` 方法查询数据,使用 `Db::execute()` 方法执行SQL 语句。
7. 如何实现分页查询?- 答案:Think PHP 提供了 `paginate` 方法实现分页查询。
例如,`$data = Db::table('table_name')->paginate(10)`。
ThinkPHP3快速⼊门教程-:基础⼀、ThinkPHP的认识:ThinkPHP是⼀个快速、简单的基于MVC和⾯向对象的轻量级PHP开发框架。
⼆、下载后的⽬录结构:├─ThinkPHP.php 框架⼊⼝⽂件├─Common 框架公共⽂件├─Conf 框架配置⽂件├─Extend 框架扩展⽬录├─Lang 核⼼语⾔包⽬录├─Lib 核⼼类库⽬录│├─Behavior 核⼼⾏为类库│├─Core 核⼼基类库│├─Driver 内置驱动││├─Cache 内置缓存驱动││├─Db 内置数据库驱动││├─TagLib 内置标签驱动││└─Template 内置模板引擎驱动│└─Template 内置模板引擎└─Tpl 系统模板⽬录注意,框架的公共⼊⼝⽂件ThinkPHP.php是不能直接执⾏的,该⽂件只能在项⽬⼊⼝⽂件中调⽤才能正常运⾏。
三、⼊⼝⽂件:默认⼊⼝:public/index.php(实际部署的时候public⽬录为你的应⽤对外访问⽬录)。
引⼊⼊⼝⽂件:<?phprequire ‘/ThinkPHP框架所在⽬录/ThinkPHP.php’;>访问路径:⾃动⽣成项⽬⽬录,⽬录结构如下:├─index.php 项⽬⼊⼝⽂件├─Common 项⽬公共⽂件⽬录├─Conf 项⽬配置⽬录├─Lang 项⽬语⾔⽬录├─Lib 项⽬类库⽬录│├─Action Action类库⽬录│├─Behavior ⾏为类库⽬录│├─Model 模型类库⽬录│└─Widget Widget类库⽬录├─Runtime 项⽬运⾏时⽬录│├─Cache 模板缓存⽬录│├─Data 数据缓存⽬录│├─Logs ⽇志⽂件⽬录│└─Temp 临时缓存⽬录└─Tpl 项⽬模板⽬录移动修改⽬录⼊⼝⽂件的路径:<?phpdefine(‘APP_NAME’,’app’);define(‘APP_PATH’,’./app/’);require ’/ThinkPHP框架所在⽬录/ThinkPHP.php’;>APP_NAME和APP_PATH分部⽤于定义项⽬名和项⽬⽬录,项⽬名通常就是指项⽬的⽬录名称。
ThinkPHPThinkPHP3.1快速入门教程系列ThinkPHP3.1快速入门(1)基础 (2)ThinkPHP3.1快速入门(2)数据CURD (10)ThinkPHP3.1快速入门(3)查询语言 (18)ThinkPHP3.1快速入门(4)连贯操作 (30)ThinkPHP3.1快速入门(5)变量 (40)ThinkPHP3.1快速入门(6)路由 (44)ThinkPHP3.1快速入门(8)视图 (51)ThinkPHP3.1快速入门(9)变量输出 (56)ThinkPHP3.1快速入门(1)基础简介ThinkPHP是一个快速、简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开发体验和易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供了强有力的支持。
目录结构ThinkPHP最新版本可以在官方网站(/down/framework.html)或者Github (https:///liu21st/thinkphp/downloads)下载。
把下载后的压缩文件解压到你的WEB目录(或者任何目录都可以),框架的目录结构为:1├─ThinkPHP.php 框架入口文件2├─Common框架公共文件3├─Conf框架配置文件4├─Extend框架扩展目录5├─Lang核心语言包目录6├─Lib核心类库目录7│├─Behavior核心行为类库8│├─Core核心基类库9│├─Driver内置驱动10││├─Cache内置缓存驱动11││├─Db内置数据库驱动12││├─TagLib内置标签驱动13││└─Template内置模板引擎驱动14│└─Template内置模板引擎15└─Tpl系统模板目录注意,框架的公共入口文件ThinkPHP.php是不能直接执行的,该文件只能在项目入口文件中调用才能正常运行(后面会讲到),这是很多新手很容易犯的一个错误。
thinkphp事件和公共方法一、了解ThinkPHP事件和公共方法的基本概念ThinkPHP是一款流行的国产PHP开发框架,它提供了事件和公共方法两种机制来实现功能模块的复用和扩展。
事件机制使得开发者可以在特定条件下执行自定义的代码,而公共方法则允许开发者创建可在多个地方使用的共享功能。
二、分析Common.php文件中的方法在Common.php文件中,我们可以看到两个主要方法:sub()和cpyname()。
sub()方法用于限制字符串长度,如果字符串长度大于20,则只返回前20个字符;cpyname()方法则用于根据ID查询复制信息并返回复制名称。
三、详解如何在模板中调用公共文件中的方法在模板文件中,我们可以通过以下方式调用Common.php中的方法:```html{volist name="message" id="v"}<div class="box">{$v.cpyid|sub:20}对{$v.accept|cpyname}留言:<br />{$v.content}<br /></div>{/volist}```在这里,我们使用了ThinkPHP的模板引擎标签`{volist}`来遍历消息列表,并调用Common.php中的sub()和cpyname()方法。
注意,我们在调用方法时使用了管道符`|`,其后紧跟方法名和参数。
四、解答常见问题及解决方法1.报错:在运行时,可能会出现模板缓存文件中找不到Common.php中方法的问题。
解决这个问题,可以在Common.php文件头部添加以下代码:```phpheader("content-type:text/html;charsetutf-8");```2.报错:如果在调用公共方法时使用了错误的变量名,可能导致页面显示乱码或无法正常显示。
ThinkPHP入门文档一、下载与安装1、从ThinkPHP官网上下载一个相对稳定的版本,这里推荐3.0版本。
2、下载后的压缩包中有个ThinkPHP文件夹,我们要做的就是把这个文件夹直接拷贝到自己项目的根目录下。
3、创建入口文件通常一个网站项目都会分为前台与后台两个部分,所以这里我们需要创建2个入口文件,但在此之前,我们要建立好目录。
在项目根目录下分别创建以下目录:A dmin存放所有后台文件H ome存放所有前台文件P ublic存放所有公共资源U pload存放用户上传的资源下面开始正式创建入口文件了,入口文件的意思就是,所有的操作必须基于这个文件。
首先,我们在Home目录中,新建一个index.php文件来作为网站前台的入口文件,这个文件中只需包含下面的代码(红框部分)就行了。
然后可以试着运行下这个文件,在浏览器中输入http://localhost/framedemo/Home/index.php如果能看到下面的结果,就表示入口文件创建成功了。
这里要注意下,thinkphp在创建入口文件的过程中,同时也会在我们的项目中自动生成一些目录,它的目录结构如下:Admin中入口文件的创建与此类似,这里不再赘述。
二、代码编写Thinkphp中数据的展示将不再放在php中,而是由html模版代替。
所以Thinkphp中代码的编写主要基于两种文件,一种是html类型的模版文件,一种是php类型的后台处理文件,这点跟Struts框架很类似,html模版文件相当于jsp,而php则相当于action。
另外,还有一个地方也需要格外注意,就是php文件html模版文件文件名类名+Action php类中的方法名后缀名.class.php.html所在目录/Lib/Action/Tpl/default/php类名上面这种命名方式与Struts2.x的动态配置也如出一辙,都秉承了一个重要的原则,即"约定大于编码"。
ThinkPHP实例化模型的四种方法T h i n k P H P中实例化模型是我们连接数据库并对数据库操作的基础,如何才能实例化模型呢?我们今天就来一起分析下:首先,什么是模型?模型(M o d e l)是T h i n k P H P中一个很重要的概念,与之有关的还包括模型的定义与实例化。
M V C是一种将应用程序的逻辑层和表现层进行分离的方法,T h i n k P H P也是基于M V C设计模式的。
T h i n k P H P中模型(M)的定义是由M o d e l类来完成的。
其次,T h i n k P H P中基础的模型类就是M o d e l类,该类完成了基本的C U R D、A c t i v e R e c o r d模式、连贯操作和统计查询等。
其他一些高级特性如:模型的分类:A d v M o d e l:高级模型类,完成一些如文本字段、只读字段、序列化字段、乐观锁、多数据库连接等模型的高级特性V i e w M o d e l:视图模型类,完成了模型的视图操作R e l a t i o n M o d e l:关联模型类,完成了模型的关联操作定义模型:基础模型类M o d e l的设计非常灵活,无需进行任何模型定义,就可以进行相关数据表的O R M和C U R D操作。
如果需要封装单独的业务逻辑的,就必须定义模型。
定义的模型类文件放在项目L i b/M o d e l目录下,由系统自动加载。
如我们定义对u s e r表的操作,文件名为U s e r M o d e l.c l a s s.p h p,其模型定义为:c l a s s U s e r M ode l e x t e n d s M o d e l{//一些业务逻辑……}在模块的操作中,可以实例化一个定义的模型,从而实现对应的业务逻辑和对数据库表的操作。
模型实例化当定义了模型之后,需要在操作中将模型实例化才能具体实现模型中的业务逻辑。