Yii实现显示静态页的方法

本文实例讲述了Yii实现显示静态页的方法。分享给大家供大家参考,具体如下:

使用Yii内置的一个CViewAction来服务所有这些页。

首先,建立以个controller类如DocController,覆盖actions方法

public function actions()
{
  return array(
    'page'=>array(
      'class'=>'CViewAction',
    ),
  );
}

根据官方指南,以上代码声明了一个外部action类CViewAction.

然后,生成目录protected/views/doc/pages.

最后,在该目录下存储一个文件叫about.php,内容为:"about this site" ,此时这些页将使用应用的默认布局文件。因此该文件仅仅描述本页相关内容。

http://www.yourhost.com/index.php?r=doc/page&view=about

如果有很多静态页,可以将其放在子目录里,假设有一个有静态页在protected/views/doc/pages/help/contact.php:

http://www.yourhost.com/index.php?r=doc/page&view=help.contact

当然,我们也可以定制CViewAction的行为,查看API文档了解更多有关于CViewAction

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

(0)

相关推荐

  • ajax翻页效果模仿yii框架自己写的

    复制代码 代码如下: <!DOCTYPE html> <html> <head> <title>ajax分页</title> <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <script> function loadXMLDoc($url) { var xmlhttp; if (window.XMLHt

  • Yii实现单用户博客系统文章详情页插入评论表单的方法

    本文实例讲述了Yii实现单用户博客系统文章详情页插入评论表单的方法.分享给大家供大家参考,具体如下: action部分: <?php function test($objs) { $objs->var=10; } class one { public $var=1; } $obj=new one(); echo $obj->var.'<p>'; test($obj); echo $obj->var; exit; PostController.php页面: ... /**

  • YII CLinkPager分页类扩展增加显示共多少页

    yii的分页类CLinkPager默认是不支持显示共x页的,那么现在需求来了,要在分页的后面显示共多少页,怎么办喃?我们来看解决办法 1.默认的CLinkPager显示的效果 上面这里写了css的样式哈,我们来看pager代码: <div class="page-link"> <?php $this->widget('CLinkPager',array( 'header' => '', 'firstPageLabel' => '首页', 'lastP

  • YII实现分页的方法

    本文以实例代码简述了yii实现分页的方法,供学习yii的朋友参考,具体代码如下: 1.控制器部分代码: public function actionTest() { $criteria=new CDbCriteria; $criteria->order='id DESC'; $count=User::model()->count($criteria); $pager=new CPagination($count); $pager->pageSize=10; $pager->appl

  • Yii分页用法实例详解

    下面我总结了在Yii常用的一些yii分页方式与实例代码,这里有普通分页与ajax实现分页,希望此文章对大家会有所帮助. 第一种:CListView分页  针对对象形式的数据分页 Controller: 复制代码 代码如下: public function actionAjax() {         $criteria = new CDbCriteria();         //$criteria->order = 'news_id DESC';         $criteria->con

  • Yii使用CLinkPager分页实例详解

    本文主要讲解了YII中使用CLinkPager分页的方法,这里我们采用物件的形式来定义分页: 首先在components中自定义LinkPager,并继承CLinkPager 具体代码如下: <?php /** * CLinkPager class file. * * @link http://www.yiiframework.com/ * @copyright Copyright © 2008-2011 Yii Software LLC * @license http://www.yiifra

  • Yii框架调试心得--在页面输出执行sql语句

    我们使用:yiidebugtb来调试(因为用他界面比较美观,不影响界面其他元素). 1.下载yiidebugtb,并且放入到 application.extensions.yiidebugtb 目录 2.修改main.php,加入如下代码: 复制代码 代码如下: 'log'=>array(             'class'=>'CLogRouter',             'routes'=>array(                 array(              

  • yii分页组件用法实例分析

    本文实例讲述了yii分页组件用法.分享给大家供大家参考,具体如下: 该案例使用时,分页类在yii框架中以组件的形式存在于components中. action代码如下: public function actionIndex(){ $user=User::model(); //分页的使用 $count=$user->count(); //获取总页数 $pagesize=3; //每一页显示的记录条数 $page=new Page($count,$pagesize); $sql="selec

  • yii2 页面底部加载css和js的技巧

    一般来说,网页内部的js文件或代码,都是放置在网页底部</body>的前面,这是因为网页自上而下加载,用户在访问我们页面的时候尽量不要因为加载js展现过长时间的空白页面,停留时间过长就白白流失了用户量. yii2中是集成了jQuery的,而且jQuery文件是加载在页面底部的,因此,如果我们的js代码段不在页面底部加载,就很大可能会发生$未定义的友好提示. 我这废话一大堆得毛病确实需要去挂个号看看了... 先来看看js代码段怎么处理 <?php $this->registerJs(

  • Yii实现显示静态页的方法

    本文实例讲述了Yii实现显示静态页的方法.分享给大家供大家参考,具体如下: 使用Yii内置的一个CViewAction来服务所有这些页. 首先,建立以个controller类如DocController,覆盖actions方法 public function actions() { return array( 'page'=>array( 'class'=>'CViewAction', ), ); } 根据官方指南,以上代码声明了一个外部action类CViewAction. 然后,生成目录p

  • CodeIgniter生成静态页的方法

    本文实例讲述了CodeIgniter生成静态页的方法.分享给大家供大家参考,具体如下: 现在我们来开发如何让CI框架生成静态页面.下面直接帖代码: $this->output->get_output(); 使用这个方法,你可以可以得到将要输出的数据,并把它保存起来,留着它用(我们做新闻类型网站的时候,常常需要生成静态的HTML文件). $string = $this->output->get_output(); $this->load->helper('file');

  • Android编程实现Gallery中每次滑动只显示一页的方法

    本文实例讲述了Android编程实现Gallery中每次滑动只显示一页的方法.分享给大家供大家参考,具体如下: import android.content.Context; import android.util.AttributeSet; import android.view.KeyEvent; import android.view.MotionEvent; import android.widget.Gallery; public class DetialGallery extends

  • ASP.NET静态页生成方法

    本文实例讲述了ASP.NET静态页生成方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 由于业务需要,得把页面按照模板页生成静态页面,所以自己就琢磨了下,写些思路,以备日后需要的时候用. 二.解决方法: 静态页生成用到最多的就是匹配跟替换了,首先得读取模板页的html内容,然后进行你自己定义的标签匹配,比如说我要把我定义的标题标签换成读取数据库的标题内容,那么可以直接读取数据库的标题,然后直接进行替换,然后生成html文件就OK了. 具体代码如下: 复制代码 代码如下: /// <su

  • asp.net基于替换模版页的形式生成静态页的方法

    本文实例讲述了asp.net基于替换模版页的形式生成静态页的方法.分享给大家供大家参考,具体如下: 第一步:新建项目,创建一个简单模版页:TemplatePage.htm <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="

  • asp.net新闻列表生成静态页之批量和单页生成

    大家都知道,生成静态页的方法有两种,第一种是使用C#在后台硬编码,第二种是读取模板文件,使用字符串代替.总体来讲第一种方法代码量比较大,维护起来有点困难.生成静态页的目的是为了提高用户体验度,加快访问速度. 使用静态页面还有如下好处: 1. 安全:使用静态页面,用户访问的使没有任何操作功能的html页面,可以说从安全性方面大大提高了程序及服务器的安全. 2. 快速:用户访问的是提前生成好的静态页面,使用户对页面的请求瓶颈只受IO的限制而不会有其他方面的影响. 3. 降低服务器,数据库负载:因为用

  • 在ASP中不用模板生成HTML静态页直接生成.html页面

    我们一般生成HTML静态页时,常常会事先做好一个模板,然后生成时调用模板文件.那么有没有办法不用模板,如一个正常的htmer.asp页面,直接生成为htmer.html页面呢?当然是可以的,而且非常简单,今天就教大家在ASP中不用模板生成HTML静态页的方法. 这里假设有一个htmer.asp动态页面,你想把它生成为HTML静态页面htmer.html,那么我们首先新建一个ASP程序文件htmer_to_html.asp(该文件就是用来将htmer.asp动态页面生成为静态页面htmer.htm

  • Thinkphp实现站点静态化的方法详解

    thinkphp提供了一个有效的生成静态页的方法,(在tp2.0的手册上有说明,3.0的手册上没有说明了,不过3.0方法还是存在的.) $this->buildHtml('静态文件', '静态路径','模板文件'); 稍微说明下参数,有些朋友问我这个参数和具体如何使用. 参数一:静态文件,是指生成后的静态文件名,文件保存路径完整的就是:静态路径/静态文件.例如静态文件设置a/index.那么保存的路径就是项目路径/Html/a/index.html(默认的静态路径在项目路径的Html文件夹下,没

  • ASP中不用模板生成HTML静态页面的方法

    当然是可以的,而且非常简单,今天就教大家在ASP中不用模板生成HTML静态页的方法. 这里假设有一个htmer.asp动态页面,你想把它生成为HTML静态页面htmer.html,那么我们首先新建一个ASP程序文件htmer_to_html.asp(该文件就是用来将htmer.asp动态页面生成为静态页面htmer.html的),htmer_to_html.asp的具体代码如下所示: 复制代码 代码如下: <form method="post" action="&quo

  • asp.net 生成静态页时的进度条显示

    asp.net如何生成静态页,请参考下面的文章:http://www.jb51.net/article/18175.htm而我们用模拟的话,只需要让线程延迟执行就可以了.比如下面的代码: 复制代码 代码如下: for (int i = 0; i < 10; i++) { DateTime startTime = DateTime.Now; Response.Write(i + "-------------执行时间:" + startTime.ToString()+"&l

随机推荐