首页技术thinkphp框架原理?Thinkphp原理及优势与不足

thinkphp框架原理?Thinkphp原理及优势与不足

编程之家2026-07-041108次浏览

大家好,今天小编来为大家解答thinkphp框架原理这个问题,Thinkphp原理及优势与不足很多人还不知道,现在让我们一起来看看吧!

thinkphp框架原理?Thinkphp原理及优势与不足

thinkphp框架有什么功能及使用方法

ThinkPHP是一个开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和ActiveRecord模式,封装了CURD和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现,也已经越来越多地受到国内PHP开发人员的认可。

使用ThinkPHP,你可以更方便和快捷的开发和部署应用,当然不仅仅是企业级应用,任何PHP应用开发都可以从ThinkPHP的简单、兼容和快速的特性中受益。简洁、快速和实用是ThinkPHP发展秉承的宗旨,为此ThinkPHP会不断吸收和融入更好的技术以保证其新鲜和活力,提供WEB应用开发的最佳实践!

thinkphp主要有什么用

1、他是一个国人开发的php框架,本质上就是相当于将代码逻辑解耦出来,分模块管理,增强类与方法的重用的同时更好的规范代码编写结构,方便二次开发。另外一个就是封装好很多功能,如数据库连接,缓存处理等,可以直接使用以达到快速开发的目的。

2、正如上个问题所说,他是一个国人开发的php框架,意思就是原生文档就是中文的,在我国php使用中占了相对较大的比重,所以一些常见问题可以很容易找到答案。你可以拿他来熟悉框架原理,以及开发一些日常的后台程序,快且简单。但是所有框架的好处都是以损耗性能为前提的,号称速度最快的yaf框架都会比原生php增加10%损耗(官方数据)

综上所述,php框架有很多,主要是方便大家快速开发与减少二次开发工作量的,但本质还是php语言。很多人学习了TP之后就不会用php来做一些基本操作了(上面提到他有很多方法类已经封装好直接用就可以了)。所以最好是学习好php,理解框架的原理,这样无论公司要求你用哪个框架你都能快速上手,否则职业生涯发展会受到限制

thinkphp3.2 后台路径应该怎么写

--前台使用了bootstrap框架技术,美化页面效果很显著(接下来计划有时间总结下bootstrap);并且应用HTML语义化文章结构,便于搜索引擎查找。

thinkphp框架原理?Thinkphp原理及优势与不足

--后台打算使用ThinkPHP框架技术,这样可以使整体架构是MVC模式,结构化和模块化项目,并且使页面的html页码和php代码分离。

--最后计划实现页面的静态化,方便吸引搜索引擎爬虫的曝光率。

后台应用TP框架:

1)路径问题

由于TP框架是MVC架构,原理跟smaty模板的一样,contraller调用view下的模板,将模板html页面替换成php,然后包含到contraller下的控制页面,并且缓存在缓存夹cache中,访问contraller时会自动定位到cache下的缓存php文件。这样就引出了路径的问题,模板view下的相对路径需要些contraller的相对路径,建议用绝对路径。

介绍几个系统常量:

thinkphp框架原理?Thinkphp原理及优势与不足

网站根目录地址 __ROOT__路径为根目录/

当前路径下 __URL__

公共区: __PUBLIC__路径为/Public/

当前应用入口 __APP__

还可以自己定义路径变量,方便项目开发。

例子:建议使用绝对路径代替相对路径

<link rel="stylesheet" rel="external nofollow" href="__PUBLIC__/css/bootstrap.css">代替<link rel="stylesheet" rel="external nofollow" href="../../Public/css/bootstrap.css">

<img src="__ROOT__/admin/Home/View/Public/images/logo.png"/>代替<img src="../../../../admin/Home/View/Public/images/logo.png"/>

2)数据库的连接展示,例子效果如下:

(1)ThinkPHP/Conf/conversation.php中配置数据库连接参数:

/*数据库设置*/

'DB_TYPE'=>'mysql',//数据库类型

'DB_HOST'=>'localhost',//服务器地址

'DB_NAME'=>'yanhui',//数据库名

'DB_USER'=>'root',//用户名

'DB_PWD'=>'',//密码

'DB_PORT'=>'',//端口

(2)Contraller中新建控制news页面NewsContrallor:

<?php

namespace Home\Controller;

use Think\Controller;

class NewsController extends Controller{

public function index(){

$user=M('news');

$this->rows=$user->order('id')->select();

$this->display();

}

public function add(){

$this->display();

}

public function insert(){

$this->display();

}

public function delete(){

$this->display();

}

public function edit(){

$this->display();

} public function update(){

$this->display();

}

}

(3)View下新建模板页面News/index.html(用了bootstrap展示前端)

<div class="container">

<div class="panel panel-primary">

<div class="panel-heading">新闻展示</div>

<div class="panel-body">

<table class="table table-bordered table-striped">

<tr>

<th>id</th>

<th>标题</th>

<th>概要</th>

<th>上墙</th>

<th>时间</th>

<th>栏目</th>

</tr>

<volist name='rows' id='row'>

<tr>

<td>{$row.id}</td>

<td>{$row.title}</td>

<td>{$row.abstract}</td>

<td>{$row.shelf}</td>

<td>{$row.regtime|date='Y-m-d',###}</td>

<td>{$row.newsclassId}</td>

</tr>

</volist>

</table>

</div>

</div>

</div>

(根据这个例子,依次实现news模块的增删改查方法)

文章到此结束,如果本次分享的thinkphp框架原理和Thinkphp原理及优势与不足的问题解决了您的问题,那么我们由衷的感到高兴!

常用excel函数公式(表格中常用的函数)微博html5版,微信网页版html5