热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

yaf视频教程-路由的定义和使用

今天我们主要讲解yaf的router路由的使用,路由的意义是自己能够定义自己url,即能简单的优化url方便用户记住,对seo也是很有帮助的,所以我们今天讲解的是yaf的路由的功能
今天我们主要讲解yaf的router路由的使用,路由的意义是自己能够定义自己url,即能简单的优化url方便用户记住,对seo也是很有帮助的,所以我们今天讲解的是yaf的路由的功能

Demo.php 插件实例代码
class Bootstrap extends Yaf_Bootstrap_Abstract{
    public function _initConfig(Yaf_Dispatcher $dispatcher){
            //var_dump($dispatcher->getRequest());
            $cOnfig= Yaf_Application::app()->getConfig();
            Yaf_Registry::set("config", $config);
    }


    public function _initRouter(){
        //通过配置app.ini配置路由
         $router = Yaf_Dispatcher::getInstance()->getRouter();
         $router->addConfig(Yaf_Registry::get("config")->routes);
         //自己设定路由
         //$route = new Yaf_Route_Supervar("r");
         //$route = new Yaf_Route_Simple("m","c","a");
         /*
         $router->addRoute(
            "paging_example",
            new Yaf_Route_Regex(
                "#^/index/page/(\d+)#",
                array('controller' => "index"),
                array(1 => "page")
            )
         );
         */
    }


    public function _initSpaceName(){
        $loader = Yaf_Loader::getInstance()->registerLocalNamespace(array("Test","Dum"));
        Yaf_Registry::set("loader", $loader);
    }




    public function _initPlugin(Yaf_Dispatcher $dispatcher){
        $demo = new DemoPlugin();
        $dispatcher->registerPlugin($demo);
    }
}
app.ini配置
[app]
application.directory=APP_PATH "/app/"
application.view.ext="html"
application.library=APP_PATH "app/library/"
application.bootstrap=APP_PATH "Bootstrap.php"
application.dispatcher.catchException=1
;自定义路由
;;顺序很重要
routes.regex.type="regex"
routes.regex.match="#/list/([^/]*)/([^/]*)#"
routes.regex.route.cOntroller=index
routes.regex.route.action=show
r< application.view.ext="html"
application.library=APP_PATH "app/library/"
application.bootstrap=APP_PATH "Bootstrap.php"
application.dispatcher.catchException=1
outes.regex.map.1=name
routes.regex.map.2=value
;添加一个名为simple的路由协议
routes.simple.type="simple"
routes.simple.cOntroller=c
routes.simple.module=m
routes.simple.action=a
;;添加一个名为supervar的路由协议
routes.supervar.type="supervar"
routes.supervar.varname=r
;
;[product : common]
;;product节是Yaf默认关心的节, 添加一个名为rewrite的路由协议
;routes.rewrite.type="rewrite"
;routes.rewrite.match="/product/:name/:value"


推荐阅读
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • Monkey《大话移动——Android与iOS应用测试指南》的预购信息发布啦!
    Monkey《大话移动——Android与iOS应用测试指南》的预购信息已经发布,可以在京东和当当网进行预购。感谢几位大牛给出的书评,并呼吁大家的支持。明天京东的链接也将发布。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • HTML5网页模板怎么加百度统计?
    本文介绍了如何在HTML5网页模板中加入百度统计,并对模板文件、css样式表、js插件库等内容进行了说明。同时还解答了关于HTML5网页模板的使用方法、表单提交、域名和空间的问题,并介绍了如何使用Visual Studio 2010创建HTML5模板。此外,还提到了使用Jquery编写美好的HTML5前端框架模板的方法,以及制作企业HTML5网站模板和支持HTML5的CMS。 ... [详细]
  • 从零基础到精通的前台学习路线
    随着互联网的发展,前台开发工程师成为市场上非常抢手的人才。本文介绍了从零基础到精通前台开发的学习路线,包括学习HTML、CSS、JavaScript等基础知识和常用工具的使用。通过循序渐进的学习,可以掌握前台开发的基本技能,并有能力找到一份月薪8000以上的工作。 ... [详细]
  • Netty源代码分析服务器端启动ServerBootstrap初始化
    本文主要分析了Netty源代码中服务器端启动的过程,包括ServerBootstrap的初始化和相关参数的设置。通过分析NioEventLoopGroup、NioServerSocketChannel、ChannelOption.SO_BACKLOG等关键组件和选项的作用,深入理解Netty服务器端的启动过程。同时,还介绍了LoggingHandler的作用和使用方法,帮助读者更好地理解Netty源代码。 ... [详细]
  • http:valor-software.comng2-bootstraphttps:www.primefaces.orgprimeng#autocomplete转载于:https: ... [详细]
  • 1.脚本功能1)自动替换jar包中的配置文件。2)自动备份老版本的Jar包3)自动判断是初次启动还是更新服务2.脚本准备进入ho ... [详细]
  • javascript  –  RTL布局中的bootstrap datepicker无法正常工作
    RTL布局中的bootstrapdatepicker工作不正常,我正在使用这个bootstrapdatepickerhttp:bootstrap-datepicker.readth ... [详细]
  • 初识java关于JDK、JRE、JVM 了解一下 ... [详细]
  • PRML读书会第十四章 Combining Models(committees,Boosting,AdaBoost,决策树,条件混合模型)...
    主讲人网神(新浪微博:豆角茄子麻酱凉面)网神(66707180)18:57:18大家好,今天我们讲一下第14章combiningmodel ... [详细]
  • ElasticSearch成功安装完毕。 测试数据添加出现{  error:{    root_cause ... [详细]
  • 基于SpringBoot打造在线教育系统(6)– 二级分类模块UI篇
    这一节来做二级分类,为了快速开发,一级分类只做新增,暂时不考虑修改和删除,如果一定要删,就去数据库删吧。我们接下来,需要通过一级分类,获取所有的二级分类。开始 ... [详细]
  • 1、DashAPI文档Dash是一个API文档浏览器,使用户可以使用离线功能即时搜索无数API。程序员使用Dash可访问iOS,MacOS, ... [详细]
author-avatar
php小盗
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有