本篇内容介绍了“php laravel框架自带命令如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1、作为服务提供者,加载到程序中。
// config/app.php 中。
'providers' => [
// 这个便是laravel自带的artisan命令提供者
Illuminate\Foundation\Providers\ArtisanServiceProvider::class,
]
2、然后找到 Up/Down命令入口
/**
* Register the command.
*
* @return void
*/
protected function registerUpCommand()
{
$this->app->singleton('command.up', function () {
return new UpCommand;
});
}
3、DownCommand实现
class DownCommand extends Command
{
/**
* The console command name.
*
* @var string
*/
protected $name = 'down';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Put the application into maintenance mode';
/**
* Execute the console command.
*
* @return void
*/
public function fire()
{
// 关键点: 在当前存储目录/framework 下面创建一个 down文件
touch($this->laravel->storagePath().'/framework/down');
$this->comment('Application is now in maintenance mode.');
}
}
// touch() 函数php文档解释
/**
* Sets access and modification time of file
* @link http://php.net/manual/en/function.touch.php
* @param string $filename <p>
* The name of the file being touched.
* </p>
* @param int $time [optional] <p>
* The touch time. If time is not supplied,
* the current system time is used.
* </p>
* @param int $atime [optional] <p>
* If present, the access time of the given filename is set to
* the value of atime. Otherwise, it is set to
* time.
* </p>
* @return bool true on success or false on failure.
* @since 4.0
* @since 5.0
*/
function touch ($filename, $time = null, $atime = null) {}
“php laravel框架自带命令如何实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注天达云网站,小编将为大家输出更多高质量的实用文章!