如何在Laravel中像Django中的print一样打印一些内容。
如何在Laravel中像Django中的print一样打印一些内容。
我有一个Laravel控制器:
class YeahMyController extends BaseController { public function getSomething() { Console::info('mymessage'); // <-- 我应该在这里放什么? return 'yeahoutputthistotheresponse'; } }
目前,我正在使用artisan运行应用程序(它在幕后运行PHP的内置开发Web服务器):
php artisan serve
我想将控制台消息记录到artisan进程的STDOUT
管道中。
问题的出现原因是没有找到在Laravel中像在Django中那样打印输出的快捷方式,需要通过创建一个facade来避免重复代码。解决方法是使用Symfony组件的ConsoleOutput类来实现打印输出,具体代码如下:
$output = new \Symfony\Component\Console\Output\ConsoleOutput(); $output->writeln("<info>my message</info>");
如果想要在Laravel中实现类似于样式化、询问和表格等功能的命令行输入输出,可以参考回答中提到的ConsoleCommand类。
参考链接:[Document reference](http://api.symfony.com/2.7/Symfony/Component/Console/Output/ConsoleOutput.html)
问题的原因是作者在使用Laravel的artisan web服务器时,想要像在Django中使用print一样打印一些信息,但是不知道如何实现。解决方法是使用Laravel特定的日志函数,如\Log::info、\Log::warning和\Log::error来记录日志。此外,当前版本的Laravel还可以直接使用info函数来记录日志。这些日志会被记录在Laravel的日志文件中,路径为/laravel/storage/logs/laravel-