如何在Laravel和Artisan中回声到控制台?

2022-08-30 12:45:54

我很好奇,我正在使用Laravel和Artisan进行迁移。是否有将信息输出到控制台的方法?我似乎找不到有关此的任何信息。例如:

<?php

class Generate_Sample_Users{

    public function up(){

        //Echo to console here
        echo "Creating sample users...";

        $generator = new Sample_Data();
        $user_count = 30;
        $users = array();


        for($i=0; $i < $user_count; $i++){
            array_push($users, $generator->generate_user($i));
        }

        DB::table('users')->insert($users);
    }

    public function down(){
        DB::table('users')->delete();
    }

}

答案 1

不知道你是在使用Laravel 3还是Laravel 4,以及它是否在Laravel 3中也是可能的,但我在文档中发现了这一点。

$this->info('Creating sample users...');

编辑

如果切换到数据库种子,则可以使用它来显示一条消息

$this->command->info('Creating sample users...');

答案 2

这对我有用

use Symfony\Component\Console\Output\ConsoleOutput;

class MigrateData {

    public function up()
    {
        $output = new ConsoleOutput();

        for($i=0; $i<50000; $i++)
        {
             $output->writeln('Converting '.$i.' of 50000');
        }
     }
}

我有一个迁移,它将一个大表转换为更有效的格式,并使用它来在工作时获得一些进展。


推荐