mvc理念和thinkphp的语法特征 thinkphp引入模板
mvc即模型(model)-视图(view)-控制器(controller)的缩写
控制器很重要,功能性的东西要靠它实现,模型我还没接触到,只知道它对数据库负责,类似一个大控件吧。。。
速度。。。
一个网站说白了还是给用户看的视图,那么控制器可以控制视图。。。
控制器在D:\WWW\myapp\Index\Lib\Action里面
入口文件是index.php
<?php define('APP_NAME','Index'); //项目名称 define('APP_PATH','./Index/'); //项目路径 define('APP_DEBUG',TRUE); //开启调试模式 include './ThinkPHP/ThinkPHP.php'; //引入ThinkPHP核心文件 ?>
控制器文件是IndexAction.class.php
<?php // 本类由系统自动生成,仅供测试用途 class IndexAction extends Action { public function index(){
echo 'hello world';
//echo C('username');
} }
浏览器输入http://localhost/myapp/
显示:hello world
既然能显示hello world就能显示页面,先不急。。。
我把 echo 'hello world'; 改成 echo C('username');
C就是config的缩写
进入D:\WWW\myapp\Index\Conf打开config.php
编辑成
<?php return array( //'配置项'=>'配置值' 'USERNAME'=>'admin', //赋值 ); ?>
控制器要显示配置里的username,在配置里,username赋值为admin了
那么http://localhost/myapp/显示admin
引入模板的句子是
$this->display()
display是展览的意思,刚百度翻译的。。。
继续。。。
直接把$this->display()放进入控制器报错,说我控制器有问题
少加了一个分割符号
因该是这样的
$this->display();
现在报的错很乐观,说我模板不存在[./Index/Tpl/Index/index.html]
缺什么加什么
index.html里面很简单,就一句话,123
刷新一下后显示123
百度一下首页模板
一股脑的把首页css什么全部复制到index里
刷新一下后发现css、js什么没有引入进来
显然它有一套自己的法则
百度一下
好吧,我放这里试试D:\WWW\myapp\public
既然路径改变了,那么模板首页也要相应的改变
我的编辑器有个替换功能,好办多了。。。
./全部替换为__PUBLIC__/
OK,保存一下
刷新看效果
very good
一个完整的页面就出来了
可惜我还不太懂mysql,认真学习下再回来加数据。。。