ThinkPHP空操做與命名空間

命名空間:
至關於一個虛擬的目錄php


正常管理文件使用文件夾--物理區分框架


TP框架的初始命名空間是:ThinkPHP\Libraryspa

在TP框架下命名空間裏面使用\表明的是初始命名空間(ThinkPHP\Library)code

1.系統目錄下根命名空間是ThinkPHP\Library下面的文件夾名稱命名的對象

2.模塊的根命名空間是以模塊名命名的blog

在定義命名空間的時候須要從根寫起例如:Home\Controller 例如:Think\Modelio


若是要使用某個類文件,引入該類命名空間的時候:
使用use關鍵字,後面寫該類的命名空間 後面加上 "\文件名"function

若是不想引入命名空間:在造類的對象的時候能夠使用\(初始命名空間)來找到對應的類
例如:new \Think\Page(30);class

 

空操做命名空間

當訪問的方法不存在時,能夠定義一個empty方法來避免空操做

function _empty()
    {
        echo "網頁不存在,請檢查地址信息";
    }

這樣當訪問不存在的方法時就會顯示以上信息

 

當訪問的控制器不存在時,能夠定義一個空操做器

<?php
namespace Home\controller;
use Think\controller;

class EmptyController extends Controller
{
    function _empty()
    {
        echo "訪問的頁面不存在!";
    }
    
    
}

這樣當訪問不存在的控制器時就會顯示以上信息

 

跨控制器調用方法

Main控制器下:

function ShuChu()
    {
        //造對象
        $index = new IndexController();
        echo $index->ShuChu();
        
        //使用A方法造對象
        $index = A("Index");
        echo $index->ShuChu();
        
        //使用R方法,造對象而且調用某個特定方法
        echo R("Index/ShuChu");
    }

Index控制器下:

public function ShuChu()
    {
        echo "教務管理系統";
    }

 

 

跨模塊調用方法

Home模塊下:

function ShuChu()
    {    
        $text = A("Admin/Text");
        echo $text->Text();
        
        echo R("Admin/Text/Text");
    }

Admin模塊下:

<?php
namespace Admin\controller;
use Think\controller;

class TextController extends Controller
{
    function Text()
    {
        echo "hello";
        return "Admin模塊下的操做";
        
    }
}
相關文章
相關標籤/搜索