thinkphp框架下404页面设置 仅三步

yipeiwu_com6年前PHP代码库

404页面即系统在找不到请求的操作方法和找不到请求的控制器名称时的一种报错行为的优化。

在很多网站中都会有使用404页面的时候,在ThinkPHP框架中该如何设置呢,接下来我介绍其中一种方法,具体内容如下

第一步:在thinkphp框架中的Home/Comtroller中建一个EmptyController.class.php,其代码如下:

<?php
namespace HomeController;
use ThinkController;
class EmptyController extends Controller{
  
  //空操作_empty()方法
  function _empty(){
    header("HTTP/1.0 404 Not Found");
    $this -> display("Public:404");
  }
  
  function index(){
    header("HTTP/1.0 404 Not Found");
    $this -> dislay("Public:404");
  }
}
?>

注意:其中 header("HTTP/1.0 404 Not Found")是定义此状态码未404。

第二步:在thinkphp框架中的Home/Comtroller中建一个公共的类PublicController.class.php,其代码如下:

<?php
namespace HomeController;
use ThinkController;
class PublicController extends Controller{
  function _empty(){
    header("Location:/bbs/thinkphp/404.html");
  }
}
?> 

注意:其中 header("Location:/bbs/thinkphp/404.html")中的/bbs/thinkphp/404.html是你出现404后页面跳转的地址,需和自己的404.html页面放置位对应。

第三步:让其他控制器全部继承 第二步中的PublicController.class.php,比如:

<?php
namespace HomeController;
// use ThinkController;
class IndexController extends PublicController {
  public function index(){
  
    *
    *
    *
     }
}
?>

注意:将use ThinkController;注释掉

以上就是thinkphp 404页面设置的全部内容,希望对大家学习php程序设计有所帮助。

相关文章

解析smarty模板中类似for的功能实现

1. 功能说明,在页面使用smarty循环100次输出,类似for循环100次{section name=total loop=100}{$smarty.section.total.in...

php中文字符串截取多种方法汇总

1. 截取GB2312中文字符串 <?php < ?php //截取中文字符串 function mysubstr($str, $start, $le...

探讨如何在PHP开启gzip页面压缩实例

示例一(用php的内置压缩函数):复制代码 代码如下:<?PHP if(Extension_Loaded('zlib')) Ob_Start('ob_gzhandler'); He...

smarty中先strip_tags过滤html标签后truncate截取文章运用

strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签。 复制代码 代码如下: <?php echo strip_tags(“Hello <b>wo...

PHP对象相互引用的内存溢出实例分析

通常来说使用脚本语言最大的好处之一就是可利用其拥有的自动垃圾回收机制来释放内存。你不需要在使用完变量后做任何释放内存的处理,因为这些PHP会帮你完成。 当然,我们可以按自己的意愿调用 u...