如何在Laravel的控制台上打印消息?

a5g8bdjr  于 2023-10-22  发布在  其他
关注(0)|答案(5)|浏览(274)

laravel如何在运行php artisan serve时在控制台上打印出一些字符串?我试过Log::info,但它不工作。

l7wslrjt

l7wslrjt1#

很简单

你可以在APP中的任何地方调用它。

$out = new \Symfony\Component\Console\Output\ConsoleOutput();
$out->writeln("Hello from Terminal");
x8goxv8g

x8goxv8g2#

尝试与

error_log('message here.');

Read More
如果您想添加

Log::info('message');

如果使用数组

Log::info(json_encode($array));

导入Illuminate\Support\Facades\Log;
你也可以使用dump()。如果你使用这个,你必须在这个之后使用dd()die

除此之外,您还可以使用dd() laravel内置的输出机制

5vf7fwbs

5vf7fwbs3#

Laravel 5.6简化了这一点,因为你现在有一个logging.php配置文件可以利用。
需要知道的关键是,你想输出到stdout,而php有一个内置的流 Package 器,叫做php://stdout。考虑到这一点,您可以为该 Package 器添加通道。您可以将stdout“channel”添加到您将要登录的通道。
下面是配置的基本外观:

<?php    

return [
  'default' => env('LOG_CHANNEL', 'stack'),

  'channels' => [
    'stack' => [
        'driver' => 'stack',
        'channels' => ['single','stdout'],
    ],

    'single' => [
        'driver' => 'single',
        'path' => storage_path('logs/laravel.log'),
        'level' => 'debug',
    ],

    'stdout' => [
        'driver' => 'monolog',
        'handler' => StreamHandler::class,
        'with' => [
            'stream' => 'php://stdout',
        ],
    ],
];

我有更多的信息在这里-Laravel 5.6 - Write to the Console

2ledvvac

2ledvvac4#

你必须配置laravel存储日志的位置。默认情况下,Log::info()将日志放在日志文件中,而不是控制台中。你可以使用tail -f logpath来查看日志。

rkkpypqq

rkkpypqq5#

可以调用info()方法

$this->info("Your Message");

相关问题