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,认真学习下再回来加数据。。。

mvc理念和thinkphp的语法特征 thinkphp引入模板的更多相关文章

  1. AutoIT脚本的语法特征

    这里主要介绍AutoIT的脚本语法特征,包括变量.关键字.宏.设置选项等,详细的语法细节,可以参考其用户手册,也可以去AutoIT中文论坛(www.autoit.net.cn)交流. 1. 变量 Au ...

  2. 模板不存在:./xx 错误位置 FILE: LINE:110 (thinkphp上传至服务器后模板无法解析原因)

    thinkphp上传至服务器后模板无法解析原因 前几日做好的响应式静态页面上传至虚拟空间,打开网址地址出现: 模板不存在:./App/Admin/View/Config/customerService ...

  3. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  4. 从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板

    标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/11155 ...

  5. Django学习——Django settings 源码、模板语法之传值、模板语法之获取值、模板语法之过滤器、模板语法之标签、自定义过滤器、标签、inclusion_tag、模板的导入、模板的继承

    Django settings 源码 """ 1.django其实有两个配置文件 一个是暴露给用户可以自定义的配置文件 项目根目录下的settings.py 一个是项目默 ...

  6. 1、ASP.NET MVC入门到精通——新语法

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 在学习ASP.NET MVC之前,有必要先了解一下C#3.0所带来的新的语法特性,这一点尤为重要,因为在MVC项目中我们利用C#3.0的新特 ...

  7. ASP.NET MVC: Razor中的@:和语法

    本文将讨论新版Razor里视图引擎中支持的两个有用的语法功能:@:和<text>语法. 用Razor实现流畅编程 ASP.NET MVC 3配有一个新的名为“Razor”的视图引擎选项(除 ...

  8. thinkphp上传至服务器后模板无法解析原因

    前几日做好的响应式静态页面上传至虚拟空间,打开网址地址出现: 模板不存在:./app/Home/View/Index/index.html 错误位置 FILE: /home/u333385714/pu ...

  9. ASP.NET MVC 学习笔记-2.Razor语法

    1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“:”结尾.代码块中定义的变量可能会被同一个域中的其他块使用. ...

随机推荐

  1. PHP+jQuery 注册模块开发

    /* ******* 环境: Apache2.2.8 + PHP5.2.6 + MySQL5.0.51b + jQuery-1.8.3.min.js ************** 其他组件:Zend_ ...

  2. maven中GroupID 和ArtifactID怎么写

    groupId :the unique identifier of the organization or group that created the project artifactId :uni ...

  3. Xamarin迁移到 Unified API 注意事项

    参考官方文档: Migrating to Unified API for Components #if __UNIFIED__ ... // Mappings Unified CoreGraphic ...

  4. wordpress the_date 方法 偶尔为空的问题

    估计很多人遇到这个问题: 一来是the_title(),the_permalink(),the_date()一路用下来,很正常也很正确 不爱读官方文档,因为文档中有个特别提示 文档:http://co ...

  5. python 动态加载module、class、function

    python作为一种动态解释型语言,在实现各种框架方面具有很大的灵活性. 最近在研究python web框架,发现各种框架中需要显示的定义各种路由和Handler的映射,如果想要实现并维护复杂的web ...

  6. attr-img-src

    https://dev.w3.org/html5/spec-preview/the-img-element.html#attr-img-src The src attribute must be pr ...

  7. P2661 信息传递 TODO-TARJAN算法

    http://www.cnblogs.com/zbtrs/p/5762788.html http://blog.csdn.net/loi_yzs/article/details/52795093 都是 ...

  8. WCF中自定义消息编码器:压缩编码器的使用

    通过抓包知道WCF在提交.返回数据的时候大多使用XML进行数据交互,如果返回DataTable那么这些数据将变得很大,通过查询找到一个对数据压缩的方法: http://msdn.microsoft.c ...

  9. ubuntu挂载其他分区到/home下,将当前分区内容替换

    有时候,我们装系统时,可能因为没注意,把某一个分区分小了,导致到最后,我们的那个盘容不下了, 这时,面临的两个选择就是:要么卸载一些软件,要么重新分区,重装系统,其实,还可以这样,去把其他 多余的盘分 ...

  10. setattribute兼容

    var spanElement = document.getElementById("mySpan"); spanElement.style.cssText = "fon ...