gpt4 book ai didi

laravel - 使用 PHP CLI 执行路由( Controller /操作)并检测 CLI 请求

转载 作者:行者123 更新时间:2023-12-04 23:02:56 25 4
gpt4 key购买 nike

Laravel 4 中有没有办法使用 PHP-CLI 运行我的 Controller / Action ?我有一个 Controller /操作,如果请求来自 CLI,我想扩展它以执行替代操作,那么有没有办法将请求标识为 CLI 请求?

Laravel 文档 this site似乎表明有一个方法 Request::cli() 用于确定当前请求是否通过 Artisan CLI 但当我在 Laravel 4 中使用该方法时,它会引发错误:

Call to undefined method Illuminate\Http\Request::cli()



基本上,我刚刚从 CakePHP 转移到 Laravel,并希望完成与本文(CakePHP)中描述的类似的事情: Calling controller actions from cron and the command line

我知道我可以使用 Laravel 4 Artisan 命令,但是我想使用的方法可行吗?如果是这样,如何?

最佳答案

正如 Rob 已经说过的,要确定当前脚本是否正在控制台中运行,请使用 App::runningInConsole()或简单的普通 PHP php_sapi_name() == 'cli' .

至于从控制台运行 controller@action,你可以使用 curlwget请求您的路线之一,但我认为这样做的正确方法是使用 custom artisan command .您的 Controller 是类,因此您可以实例化它们并在您的 artisan 命令中随意使用:

$controller = new SomeController;
$controller->someAction();

watch this video介绍如何轻松开发自己的工匠命令。

关于laravel - 使用 PHP CLI 执行路由( Controller /操作)并检测 CLI 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18607012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com