laravel组件单独加载(1):路由 Route Controller

加载路由组件

加载路由组件,需要在根目录下创建composer.json文件:

{
    "require":{

    }
}

然后放入组件

{
    "require":{
        "illuminate/routing":"*",
        "illuminate/events":"*"
    }
}

执行composer install命令安装组件 , routing是路由组件,但是需要events组件支持。

创建public目录,在此目录下创建index.php入口文件,目录结构和laravel保持一致

在index.php文件引入自动加载和注册路由

<?php
//自动加载
require __DIR__.'/../vendor/autoload.php';
//实例化服务器容器,注册事件,路由服务提供者
$app = new Illuminate\Container\Container;  //服务容器【服务的注册和解析】

with(new Illuminate\Events\EventServiceProvider($app))->register();
with(new Illuminate\Routing\RoutingServiceProvider($app))->register();
//加载路由
require __DIR__.'/../app/Http/routes.php';
//实例化请求并分发处理请求
$request = Illuminate\Http\Request::CreateFromGlobals();
$response = $app['router']->dispatch($request);
//返回请求响应
$response->send();

创建app目录,在app目录下创建Http目录,在Http目录下创建routes.php文件

<?php
    $app['router']->get('/',function(){
        return '<h1>路由安装成功</h1>';
    });

运行项目

加入控制器操作

compoer.json问价加入新内容

{
    "require":{
        "illuminate/routing":"*",
        "illuminate/events":"*"
    },
    "autoload": {
        "psr-4": {
            "App\\":"app/"
        }
    }
}

采用psr-4规范,执行 composer dump-autoload 重新载入下

在app\Http目录下创建controllers目录,早controllers目录下创建WelcomeController.php

<?php
namespace App\Http\Controllers;

class WelcomeController {
    public function index(){
        return "<h1>控制器成功!</h1>";
    }
}

app\Http\routes.php 文件加入新内容

<?php
    $app['router']->get('/',function(){
        return '<h1>路由安装成功</h1>';
    });

    $app['router']->get('welcome','App\Http\Controllers\WelcomeController@index');

运行项目

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值