文档标签: mvc
为了更深入的了解MVC的原理和实际中的应用,有必要自己试着去学写一下MVC框架。
本篇先介绍一下php的MVC实现原理,我们框架的MVC部分也是基于此原理实现的,但是今天的代码并不是框架内的代码,仅仅为说明原理
一、文件结构
建立3个文件夹
controller文件夹存放控制器文件
view文件夹存放视图文件
model文件夹存放数据文件
建立1个index.php 作为唯一入口
二、控制器
我们在controller文件夹下建立一个democontroller.php文件,文件内容如下
[php]
<?php
class DemoController
{
function index()
{
echo('hello world');
}
}
/* End of file democontroller.php */
[/php]
这个文件里面我们只是建立了一个名为DemoController的对象并包含一个index的方法,该方法输出hello...
今天在开始学习MVC的时候要用到在方法内容获取自身的方法名称。
例:
[php]
function index(){
echo __FUNCTION__;
}
[/php]
php中的一些常量以及获取当前类名函数名的方法
.获取行号、文件路径文件名、类名、方法名的常量
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径。
__FUNCTION__ 函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__CLASS__ 类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
__METHOD__ 类的方法名(PHP 5.0.0 ...
PHP模板引擎,除官方的Smarty之外,其它开源的模板引擎,不下于成百上千。这是有历史的原因的。
早期,Smarty早其由于性能上的问题,使得全世界众多的PHP开发者,不得不进一步想弄出更好的模板引擎出来。因为,高并发的高性能要求的大型网站,使用SMARTY,简直就是恶梦。
到目前为止,PHP模板引擎角然处于春秋战国时代,大量的模板引擎,让衩学者不知所措。从我们国内的基本现状来看,普通公司,对项目要求,必须要使用MVC但其性能要求不高的,基本都是Smarty。因为Smarty作为官方的模板引擎,技术比较普及,找一个程序员也较为方便。国内一些开发框架,也主动集成Smarty。这也造成了,一些官方的模板引擎,在国内得不到普及。
当然,早期,Smarty虽然那么性能低下,却凭借其提供的Cache争夺了市场。
近其,我对模板引擎对互联网进行一了些搜索,发现,有官方网站的大概有以下一些:
http://dwoo...
3 条记录 1/1 页