• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
Tutsplanet

Tutsplanet

Free Technical and Blogging Resources

  • Home
  • Web Hosting
  • Programming
  • Plugins
  • Twitter Trends
  • Tools
  • About Us

Programming TagsLaravel

How to create a custom console command (artisan) for Laravel

Jan 28, 2021 Editorial Staff Leave a Comment

Share
Tweet
Share

Laravel’s Aritsan(command-line interface) is well known among developers as commands are always very handy to achieve results. Laravel is not different, comes with very good setup for extending their core command interface.

In Laravel, commands are generally saved in the app/Console/Commands folder.

In this article, you’ll learn how to create a custom command for artisan easily in Laravel.

Create  command

Let’s say we are working on a project that imports several products from a third party system and we just need automate it using commands.

php artisan make:command ImportProducts --command=import:products

This should create a QuizStart class in the /app/console/commands directory with App\Console\Commands namespace.

Note : –command is generates a command that we can run in the command line, like below

php artisan import:products

Structure of command file

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;

class ImportProducts extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'import:products';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Command description';

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle()
    {
        $this->info("Run command successfully");
    }
}

Output a text

You may try to print different outputs by using below statements in handle() function

$this->line("Some Random text");
$this->info("Hello Ran successfully !");
$this->comment("Just a comment");
$this->question("Are you sure");
$this->error("Wooh, something got wrong");

Note: Tested in Laravel 8.x


Editorial Staff

Editorial Staff at Tutsplanet is a dedicated team to write various tutorials about subjects like Programming, Technology and Operating Systems.

View all posts by Editorial Staff

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar



Quick Links

  • Top 21 Website Ideas To Make Money Online in 2021
  • A Simple YouTube Video Downloader Script in PHP
  • The 50 Most Useful jQuery Plugins for Frontend Development
  • Replace “\n” with new line characters, using Notepad++
  • Using Third-Party Libraries in Codeigniter
  • Upload Multiple Images and Store in Database using PHP and MySQL.
  • Hierarchical Tree view Category Example in Laravel
  • Laravel Image Intervention Tutorial With Example
  • How to import sql file in MySQL database using PHP?
  • Free VAT Calculator Online



Subscribe

* indicates required



Search Here

Share

   



Hot topics

  • Replace “\n” with new line characters, using Notepad++ 60 views
  • How to enter new line in Microsoft Teams? 53 views
  • A Simple YouTube Video Downloader Script in PHP 38 views
  • Open a URL in a new tab using JavaScript 32 views
  • Add FTP/SFTP in Visual Studio Code 19 views
  • How to change PHP version on MAMP – Mac OSX 15 views
  • How to use Faker with Laravel ? 15 views
  • Solution: windows photo viewer opens each time save a pic file 15 views
  • PHP: Implode () with quotes 14 views
  • Using Third-Party Libraries in Codeigniter 13 views

Categories

  • Design & Development
  • Drupal
  • Facebook
  • General
  • How To
  • ios
  • Javascript
  • Linux
  • Magento
  • Marketing
  • News
  • PHP
  • Plugins
  • Programming
  • Snippets List
  • Social Media
  • Softwares
  • Themes
  • Tips
  • Wordpress
  • YouTube























Copyright © 2022 · Planet on Genesis Framework · Powered By BunnyCDN . Network wallpapernoon.com