我们在对
1、模板的由来
在没有模板技术之前,使用PHP开发程序,通常都是php代码和html混编在一起。比如说新闻列表,很可能就是一个newslist.php页面,结构如下:
- ?
- //从数据库中读取出要显示的新闻记录
- ?>
- html>
- head>……..
- /head>
- body>
- ?
-
While ($news = mysql
_fetch_array($result)) { - ?>
- !--输出新闻标题 -- >
- ?
- }
- ?>
- /body>
- /html>
那么这样有什么问题呢?首先,不利于分工合作。一般来说,都会由程序员来写代码,美工人员设计页面。那么在这种方式中,程序员必须等待美工人员把界面设计 好才能开始工作。也就是说程序员和美工的工作是不能同步的。其次、不利于维护,可维护性差。比如说程序固定后,要修改界面,那么必须由美工修改后,程序员 再重新添加。最后,程序结构混乱,可读性差。HTML和PHP混编在一起,一旦程序一多,就会变的非常的凌乱。
理解模板原理——使用PHP标签模板
模板技术正是为了解决这些问题而出现的,为了解决这些问题,最早出现的是使用PHP标签模板。
首先,我们要明白模板的目的是什么。模板主要要实现几个任务呢?
第一、美工和程序的分离。更确切的说法是获取数据和显示数据的分离。
第二、分工。良好的分工合作。
比如说新闻列表,如果使用PHP标签模板,我们就可以把新闻列表的操作分成两部分:
1、 getnews.php 负责从数据库中读取数据到数组$news中,不关心$news是如何显示的。
2、 Shownews.php 负责把$news数组输出成HTML页面。而它不需要理会$news是从哪里来的。
好,这样,我们就实现了美工和程序的分离,达到了我们的初步目的,但是如何把这两个页面联合起来,并实现listnews.php的功能呢?
这就需要另外一个页面listnews.php,来负责把“美工(显示数据)”和“程序员(获取数据)”连接起来。应该说这个页面就是很简单了。
假设getnews.php的代码如下:
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><span> ? </span></span></span></li> <li> <span>$</span><span class="attribute">news</span><span> =“新闻列表”;</span> </li> <li><span>//实际中应该是从数据库中读取出来的。 </span></li> <li class="alt"> <span class="tag">?></span><span> </span> </li> <li><span>Shownesw.php的代码如下: </span></li> <li class="alt"><span class="tag"><span> </span><span class="tag-name">html</span><span class="tag">></span><span> </span></span></li> <li><span class="tag"><span> </span><span class="tag-name">head</span><span class="tag">></span><span> </span></span></li> <li class="alt"><span class="tag"><span> </span><span class="tag-name">title</span><span class="tag">></span><span>显示新闻</span><span class="tag"><span> /title</span><span class="tag">></span><span> </span></span></span></li> <li><span class="tag"><span> /head</span><span class="tag">></span><span> </span></span></li> <li class="alt"><span class="tag"><span> </span><span class="tag-name">body</span><span class="tag">></span><span> </span></span></li> <li><span class="tag"><span> ?=$news</span><span class="tag">?></span><span> </span></span></li> <li class="alt"><span class="tag"><span> /body</span><span class="tag">></span><span> </span></span></li> <li><span class="tag"><span> /html</span><span class="tag">></span><span> </span></span></li> </ol>
那么,这个联合页面listnews.php的代码就很简单了
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><span> ? </span></span></span></li> <li><span>Include(‘getnews.php');</span></li> <li><span>//获取数据 </span></li> <li class="alt"><span>Include(‘shownesw.php');</span></li> <li class="alt"><span>//显示数据 </span></li> <li> <span class="tag">?></span><span> </span> </li> </ol>
总结
使用PHP标签模板系统,能够很好的实现美工和程序的分离,同时方便程序员和美工人员的分工合作,比如在上面的例子中shownews.php由美工人 员来维护,getnews.php由程序人员来维护。而listnews.php就可以由系统设计人员来维护了。当然这中间需要增加一些约定的文档。
事实上,这个简单的例子也说明了最基本的MVC模型。其中M,模型,也就是负责读取数据,相当于我们的getnews.php。V,就是试图,用来显示数据,也就对应了shownews.php。最后是控制器C,对应我们的listnews.php

PHP主要是过程式编程,但也支持面向对象编程(OOP);Python支持多种范式,包括OOP、函数式和过程式编程。PHP适合web开发,Python适用于多种应用,如数据分析和机器学习。

PHP起源于1994年,由RasmusLerdorf开发,最初用于跟踪网站访问者,逐渐演变为服务器端脚本语言,广泛应用于网页开发。Python由GuidovanRossum于1980年代末开发,1991年首次发布,强调代码可读性和简洁性,适用于科学计算、数据分析等领域。

PHP适合网页开发和快速原型开发,Python适用于数据科学和机器学习。1.PHP用于动态网页开发,语法简单,适合快速开发。2.Python语法简洁,适用于多领域,库生态系统强大。

PHP在现代化进程中仍然重要,因为它支持大量网站和应用,并通过框架适应开发需求。1.PHP7提升了性能并引入了新功能。2.现代框架如Laravel、Symfony和CodeIgniter简化开发,提高代码质量。3.性能优化和最佳实践进一步提升应用效率。

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

PHP类型提示提升代码质量和可读性。1)标量类型提示:自PHP7.0起,允许在函数参数中指定基本数据类型,如int、float等。2)返回类型提示:确保函数返回值类型的一致性。3)联合类型提示:自PHP8.0起,允许在函数参数或返回值中指定多个类型。4)可空类型提示:允许包含null值,处理可能返回空值的函数。

PHP中使用clone关键字创建对象副本,并通过\_\_clone魔法方法定制克隆行为。1.使用clone关键字进行浅拷贝,克隆对象的属性但不克隆对象属性内的对象。2.通过\_\_clone方法可以深拷贝嵌套对象,避免浅拷贝问题。3.注意避免克隆中的循环引用和性能问题,优化克隆操作以提高效率。

PHP适用于Web开发和内容管理系统,Python适合数据科学、机器学习和自动化脚本。1.PHP在构建快速、可扩展的网站和应用程序方面表现出色,常用于WordPress等CMS。2.Python在数据科学和机器学习领域表现卓越,拥有丰富的库如NumPy和TensorFlow。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

Dreamweaver Mac版
视觉化网页开发工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。