ThinkPHP5第一次亲密接触

先下载tp5点此进入官网下载

修改虚拟主机我安装的是xampp
1. 修改域名,进入C:\Windows\System32\drivers\etc 修改hosts最下面的127.0.0.1 后面的localhost,改成你想要修改成的额域名,比如修改成www.demo.com,你运行起ApaChe,在浏览器输入www.demo.com 相当于你输入localhost
2. 修改虚拟主机配置,目的是你浏览器访问上面修改完的域名www.demo.com后,跳入的具体目录,我的是直接访问tp5的public下的index文件
先进入你安装的xampp下的Apache的目录,然后进入conf下的extra,我的具体路径是C:\xampp\apache\conf\extra,
然后修改httpd-vhosts.conf文件,在最后面加上下面的代码,将你对应要访问的文件和域名输入进去,C:\xampp\htdocs\tp5\public这是我tp5的项目

<VirtualHost *:80>
    DocumentRoot "C:\xampp\htdocs\tp5\public"
    ServerName www.demo.com
    <Directory "C:\xampp\htdocs\tp5\public">
        Options Indexes FollowSymLinks

        AllowOverride All

        Require all granted
    </Directory>
</VirtualHost>

目录结构
application 应用目录,整个网站的核心
1. index 前台目录
a. controller 控制器
b. model 数据模型
c. view 页面
2. admin 后台目录
extend 扩展类库目录
public 静态资源和入口文件
1. static 存放静态资源,比如css,js,img
2. index.php 入口文件
runtime 网站运行临时目录
tests 测试目录
thinkphp TP框架的核心文件
1. lang 语言包
2. library TP核心文件
3. tpl 模板界面
vendor 第三方扩展目录

UR了解http://www.demo.com/index.php/index/index/index
www.demo.com 域名
index.php 入口文件
index 前台
index 控制器

注意 我们访问都是直接访问的控制器controller,然后通过控制器来访问model和view,通过浏览器不访问model和view

index index方法

连接数据库 C:\xampp\htdocs\tp5\application\database.php

开启调试模式 C:\xampp\htdocs\tp5\application\config.php
‘app_debug’ => true,

MVC模式
M model 模型 执行数据库处理
V view 视图 其实就是页面
C controller 控制器 负责逻辑运转

跨控制器调用
例子一:在同一个模块下的控制器互相调用
比如在application下的view模块的controller有两个控制器,一个是Index,另一个是User,我在Index下的useConMet方法里面调用User下的index方法
1.使用new域名

     public function useConMet(){
        $mode=new \app\index\controller\User();
        echo $mode->index();
     }

2.使用use

扫描二维码关注公众号,回复: 911215 查看本文章
use app\index\controller\User;
class Index{
    public function useConMet(){
        $mode=new User();
        echo $mode->index();
    }
}

3.使用系统控制器controller

 public function useConMet(){
        $mode=controller('User');
        echo $mode->index();
    }

上面的是在本模块内的跨控制器调用,接下来我们说一下跨模块控制器调用,比如index模块调用admin模块的控制器方法也是以上三种方法,但是写路径不一样
1.使用new域名

$mode=new \app\admin\controller\Index();

2.使用use 改下app后面的路劲

use app\admin\controller\Index as adminIndex;  //由于两个Index命名一样,所以要用as起个别名
class Index                                    //由于两个Index命名一样,所以要用as起个别名
{
    public function useConMet(){
        $mode=new adminIndex();
        echo $mode->index();
    }
}

3.使用系统 controller里面路径要写那个模块的

$mode=controller('admin/Index');

控制器内调用方法 比如在Index控制器内,在useConMet调用demo方法

    public function useConMet(){
        echo $this->demo();            //用this
        echo '</br>';
        echo self::demo();             //用self
        echo '</br>';
        echo Index::demo();            //用类名
        echo '</br>';
        echo action('demo');        //用系统方法
    }

猜你喜欢

转载自blog.csdn.net/qq_34475058/article/details/80334359