zoukankan      html  css  js  c++  java
  • 20150314--TP-02

    1、 url调度模式

    url的调度模式就是url的访问方式

    ThinkPHP支持四种URL模式,可以通过设置URL_MODEL参数来定义

    这个配置选项的值共有四个

    0   :普通模式

    1 :pathinfo模式(默认)

    2 :rewrite模式

    3 :兼容模式

    1) 普通模式

    wpsBBDB.tmp

    语法:

    http://项目/入口文件?m=模块名&a=动作名

    运行:

    wpsBBDC.tmp

    2) pathinfo模式

    wpsBBDD.tmp

    语法:

    http://项目/入口文件/模块名/动作名

    运行:

    wpsBBED.tmp

    在项目的配置文件中,可以修改以下选项修改路径分隔符

    URL_PATHINFO_DEPR

    wpsBBEE.tmp

    访问时:

    wpsBBFF.tmp

    3) rewrite模式

    (1) 修改config.php配置选项

    wpsBC00.tmp

    (2) httpd.conf配置文件中加载了mod_rewrite.so模块

    wpsBC10.tmp

    (3)AllowOverride None 将None改为 All

    wpsBC21.tmp

    (4)把下面的内容保存为.htaccess文件放到入口文件的同级目录下

    <IfModule mod_rewrite.c>

    RewriteEngine on

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

    </IfModule>

    语法:

    http://项目/模块名/动作名

    运行:

    wpsBC22.tmp

    4) 兼容模式

    wpsBC23.tmp

    语法:

    http://项目/入口文件?s=/模块名/动作名

    运行:

    wpsBC34.tmp

    2、 空操作

    空操作是指系统在找不到指定的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化。

    语法:

    public function _empty($name){

    }

    1) 错误页面的定制

    wpsBC44.tmp

    访问时:

    wpsBC45.tmp

    2) 优化url

    wpsBC56.tmp

    访问:

    wpsBC67.tmp

    我们访问时,由于没有shanghai方法,所以会自动定位到_empty方法中,并将shanghai做为参数传递给$name。

    3、 空模块

    空模块的概念是指当系统找不到指定的模块名称的时候,系统会尝试定位空模块(EmptyAction),利用这个机制我们可以用来定制错误页面和进行URL的优化。

    语法:

    class EmptyAction extends Action{

    }

    MODULE_NAME:请求的当前模块名称

    1) 错误页面的订制

    wpsBC77.tmp

    运行:

    wpsBC88.tmp

    系统找不到abc控制器,所以会自动定位到EmptyAction中。

    2) 优化url

    wpsBC89.tmp

    运行:

    wpsBC99.tmp

    4、 项目分组

    一般网站项目是由若干个小项目构成的,如:前台、后台、会员、博客等

    配置文件config.php中有两个选项,用于配置项目的分组

    l APP_GROUP_LIST :分组列表

    l DEFAULT_GROUP :默认组名

    1) 修改配置文件

    wpsBCAA.tmp

    2) 创建分组控制器目录

    wpsBCAB.tmp

    3) 运行

    wpsBCBC.tmp

    4) 对模板进行分组

    wpsBCCC.tmp

    5、 url大小写

    TP中的url严格区分大小写,如果想不区分大小写,可以修改以下选项:

    配置文件:config.php

    l ‘URL_CASE_INSENSITIVE’=>true

    wpsBCCD.tmp

    运行:

    wpsBCDE.tmp

    6、 页面跳转

    在需要对用户的操作信息进行提示时,可以使用以下两个方法:

    l success :操作成功时所调用的方法

    l error   :操作失败时所调用的方法

    配置文件:config.php

    l TMPL_ACTION_SUCCESS :success方法对应的模板

    l TMPL_ACTION_ERROR :error方法对应的模板

    代码:

    wpsBCEF.tmp

    运行:

    wpsBCF0.tmp

    配置文件中:

    wpsBD00.tmp

    可以修改以上选项,实现自定义模板

    7、 页面重定向

    如果想实现页面的重定向,可以使用以下方法:

    redirect

    语法:

    $this->redirect(“news/show”, array(‘id’=>2),  5, “页面跳转中” );

    参数1:跳转地址

    参数2:参数数组

    参数3:停留时间

    参数4:提示信息

    wpsBD11.tmp

    一、 视图

    1、 什么是视图

    用户看到的并与之交互的界面

    在tp中,视图主要包含两部份:

    1) 视图类

    2) 模板

    2、 模板定义

    默认的模板文件定义规则:

    模板目录/[分组名/]模块名/操作名+模板后缀

    TMPL_TEMPLATE_SUFFIX :模板后缀名

    wpsBD12.tmp

    wpsBD13.tmp

    3、 分隔符

    l 'TMPL_L_DELIM'=>'<{', :模板左分界符  默认:{

    l 'TMPL_R_DELIM'=>'}>', :模板右分界符 默认:}

    wpsBD23.tmp

    4、 模板赋值与输出

    模板赋值:

    $this->assign(‘模板变量名’,’值’);

    模板输出:

    $this->display(‘模板名’);

    wpsBD34.tmp

    5、 模板字符串替换

    在tp的模板中,默认有一些字符串表示一些路径

    l __PUBLIC__:当前网站的公共目录

    l __APP__: 当前项目的URL地址

    l __GROUP__:当前分组的URL地址

    l __URL__: 当前模块的URL地址

    l __ACTION__:当前操作的URL地址

    l TMPL_PARSE_STRING :可以在配置文件中配置此选项,用于一些常用路径的定义

    Tmpl_parse_string

    模板文件:

    wpsBD45.tmp

    运行:

    wpsBD55.tmp

    配置文件:

    wpsBD56.tmp

    模板文件:

    wpsBD67.tmp

    6、 获取内容

    l $this->fetch();

    fetch :获取内容,返回字符串

    display :输出字符串

    wpsBD78.tmp

  • 相关阅读:
    poj1182 食物链
    poj1611 The Suspects
    poj3436 Computer Factory
    (转) GPG入门教程
    cronolog安装配置
    RHCA-436-4 rhcs conga
    pxe引导gparted live万能分区
    linux下拔号pptp
    GNU parted简略用法
    hostapd故障解决(1.1,2.0,2.2)
  • 原文地址:https://www.cnblogs.com/lifushan/p/5469471.html
Copyright © 2011-2022 走看看