Thinkphp 总结(1) 结构了解 控制器调用

MVC 初始了解

1.新建控制器

app>index>前台目录下 >controller 目录创建 Car.php【必须大写】

namespace appindexcontroller;
class Car{	
	public function index()
	{
		return "mycar";
	}	
}  

访问http://127.0.0.1/index.php/index/car/index

2.跨控制器调用
 
  controller 必须/    action /  都可以

 <?php
namespace appindexcontroller;

use  appindexcontrollerUser;
use  appadmincontrollerIndex as AIndex;
class Index
{
    public function index()
    {
        return '010';
    }

    public function diaoyong()
    {
        #调用当前模块
        // 1.命名空间
        $modesl=new appindexcontrollerUser;
        echo $modesl->index();

        echo "<hr>";
        // 2.使用use
        $s=new User;
        echo $s->index();
        echo "<hr>";
         // 3.使用系统方法
        $a=controller('index/User');
        echo $a->index();
    }
    public function dys()
    {
        $model= new appadmincontrollerIndex;
        echo $model->index();
        echo "<hr>";
        $A= new AIndex;
        echo $A->index();
        echo "<hr>";
     #系统方法
        $admin=controller('admin/Index');
        echo $admin->index();

    }
}

 访问http://127.0.0.1/index/index/diaoyong

public function ff()
    {
 // 1.调用当前控制器的test方法
        echo  $this->test() ;   
        echo "<hr>";   
        echo self::test();
        echo "<hr>";
        echo Index::test();
        #使用系统的方法
        echo "<hr>";
        echo action('Car/index');
         echo "<hr>";
         $c=controller('index/Car');
        echo $c->index();
    }
    public function ffother()
    {
// 1.调用其他控制器的test方法
        $mo=new appindexcontrollerUser;
        echo $mo->index();
        echo "<hr>";
        echo action('User/index');
        echo "<hr>";
        echo action('admin/Index/adminindex');
    }

 差别:
控制器调用  ,先把控制器调用过来 再echo 他的index方法

$a=controller('index/User');
echo $a->index();

$admin=controller('admin/Index');
echo $admin->index();


方法调用  ,直接调用方法

echo action('User/index');
echo action('admin/Index/adminindex');

 

原文地址:https://www.cnblogs.com/nice2018/p/10658280.html