Skip to main content

Qu’est-ce qu’Artisan

Artisan est l’interface en ligne de commande (CLI) livrée avec Laravel. Il s’agit du script artisan à la racine du projet, qui propose de nombreuses commandes pour accélérer le développement et l’exploitation. Pour lister les commandes disponibles :
Pour l’aide d’une commande :
Avec Laravel Sail, utilisez sail artisan à la place. La commande s’exécute dans le conteneur Docker.

Tinker

Laravel Tinker est un REPL qui permet d’interagir en ligne de commande avec toute l’application : modèles Eloquent, jobs, événements, etc.
Écrivez directement du PHP.
Tinker modifie réellement les données. Faites attention en production. Convient à la vérification et au débogage en local ou en staging.

Créer une commande personnalisée

Générer la commande

Utilisez make:command pour générer le squelette.
app/Console/Commands/ImportProducts.php est généré.

Structure de base

La classe générée possède trois éléments clés : $signature, $description et handle().
Sous Laravel 13, vous pouvez aussi utiliser des attributs PHP.

Définir arguments et options

$signature regroupe le nom, les arguments et les options.

Lecture des arguments et options

Dans handle(), utilisez argument() et option().

input() — accesseurs typés

input() permet d’accéder aux arguments/options avec les mêmes accesseurs typés que pour une requête HTTP.
Pour ne récupérer qu’un nom précis, passez-le directement (cherche à la fois dans arguments et options).
Alors que argument() et option() retournent des chaînes, input() convertit dans le type approprié. Idéal pour manipuler dates, nombres ou enums en toute sécurité.

Interaction utilisateur

Écrire dans la console

Vous disposez de méthodes pour afficher des messages colorés.

Poser une question

Recevez des entrées de manière interactive.

Barre de progression

Affichez la progression pour de gros traitements.
Pour un contrôle plus fin :

Cas d’usage

Commande d’import de données

Exemple d’import de produits depuis un CSV.
1

Générer la commande

2

Implémentation

3

Exécuter la commande

Commande de maintenance périodique

Exemple : suppression de vieilles données.

Combinaison avec la planification

Les commandes créées peuvent être planifiées dans routes/console.php. Voir Planification de tâches.

Tester les commandes

La fonctionnalité de test de Laravel permet de vérifier vos commandes Artisan.
Assertions disponibles avec artisan() :

Commandes fréquentes

Dernière modification le 13 juillet 2026