> 백엔드 개발 > PHP 튜토리얼 > thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

WBOY
풀어 주다: 2016-06-06 20:28:11
원래의
1847명이 탐색했습니다.

namespace Home\Controller;
use Think\Controller;
class EmptyController extends Controller{

<code>public function _empty() {
    $this->show('404');
}</code>
로그인 후 복사
로그인 후 복사

}
定义了一个空操作和空方法,不存在的空操作和空方法都能走到EmptyController ,
但是已存在的类下面写一个不存在的方法就提示非法操作了。

在每个类下面都写一个_empty()肯定是不现实的,这个控制器放的位置不对吗?
thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

回复内容:

namespace Home\Controller;
use Think\Controller;
class EmptyController extends Controller{

<code>public function _empty() {
    $this->show('404');
}</code>
로그인 후 복사
로그인 후 복사

}
定义了一个空操作和空方法,不存在的空操作和空方法都能走到EmptyController ,
但是已存在的类下面写一个不存在的方法就提示非法操作了。

在每个类下面都写一个_empty()肯定是不现实的,这个控制器放的位置不对吗?
thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

thinkphp使用tp框架中使用空操作和空方法,不能定位到_empty()

你写的有问题,应该是把你的_empty方法写到请求的controller里面,而不是空控制器里面。

就算是要写到空控制器里面,也不是你这样的写法,具体看官方文档:空控制器

如果不想每个类下面都有一个_empty方法,可以写一个BaseController 继承Controller,把_empty方法写到这个里面,你的其他控制器继承这个BaseController就可以了

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿