福州网站建设>网站新闻>thinkphp6专区

tp6 怎么绑定控制器方法呢

发布日期:2022-03-16浏览次数:27 来源:福州网站建设

tp5 可以通过 BIND_MODULE 绑定 模块、控制器和 方法, 请问 tp6怎么实现这个功能呢?// tp5
define('APP_PATH',  __DIR__ . '/application/');
define('BIND_MODULE', 'qq/Index/service');

// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';
在tp5的 根目录下 , 可以创建一个PHP文件如 start.php, 然后命令行执行 php start.php start 后, 可以自动绑定到 qq模块下的 index控制器下的service方法

请问 tp6下 如何实现这个功能呢?<?php

namespace think;

// 加载框架引导文件
require __DIR__ . '/vendor/autoload.php';

// 执行HTTP应用并响应
$http = (new App())->http;
$response = $http->name('wap')->path('app\qq\controller\index\service')->run();
$response->send();
我上面的方式报错, 请问tp6下 多模块下该怎么绑定到qq模块下的 index控制器下的service方法呢?

网友评论

  • lgcoper 03月16日

    刚刚也要这样用,研究了一下,设置路由规则即可,代码如下。

    [code]
    <?php
    namespace think;
    require __DIR__ . '/../vendor/autoload.php';
    $app = new App();
    $app->route->rule('','modulename/controllername/actionname');
    $response = $app->http->name('modulename')->run();
    $response->send();
    $app->http->end($response);

    /****
    例如下面的写法
    $app->route->rule('','qq/index/service');
    $response = $app->http->name('qq')->run();
    ***/
    [/code]

  • shulun743 01月10日

    namespace think;

    // 加载框架引导文件
    require __DIR__ . '/vendor/autoload.php';

    // 执行HTTP应用并响应
    $http = (new App())->http;
    $response = $http->name('Socketio')->path('/socketio/Index/index')->run();
    $response->send();

    写了一个 折中的用法 就是 name 中定义应用名称, 但是只能定义到 index控制器的index方法

  • 仿站工作室 01月09日

    Container::get('app')->path(APP_PATH)->bind('admin')->run()->send();
    admin是控制器

  • shulun743 01月10日

    我这样写的 <code>Container::get('app')->path('wap/Socketio/service')->bind('wap')->run()->send();</code>

    因为是 tp6 多模块格式呢, 所以我绑定到 wap模块下 socketio控制器呢,但报错了, 请问大神该怎么写?

thinkphp6专区有关的文章
如果您有什么问题,欢迎咨询我们客服! 点击QQ咨询
欧美肥老太牲交大战