Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Artisan Dd Laravel Package

spatie/laravel-artisan-dd

Run one-off Laravel code from the command line without opening Tinker. Use php artisan dd "User::first()" to execute expressions and dump results. Supports multiple expressions and short class names for quick debugging and inspection.

View on GitHub
Deep Wiki
Context7

Quickly dd anything from the commandline

Latest Version on Packagist run-tests Check & fix styling Total Downloads

Laravel's tinker command allows to run any code you want as if you are inside your Laravel app. But if you want to run a single line of code if can be a bit bothersome. You must start up tinker, type the code, press enter, and quit tinker.

This package contains an Artisan command to dd anything from the commandline. No need to start and quit tinker anymore.

# dumps the first user
php artisan dd "User::first()"

Support us

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation

You can install the package via composer:

composer require spatie/laravel-artisan-dd

You must register the Spatie\ArtisanDd\DdCommand in the bootstrap file:

// bootstrap/app.php

->withCommands([
    \Spatie\ArtisanDd\DdCommand::class,
])

Usage

You can pass any code you want to execute as the first argument. The result will be dumped to the screen.

php artisan dd "bcrypt('secret')"; 

Multiple pieces of code can be dumped in one go:

php artisan dd "bcrypt('secret')" "bcrypt('another-secret')"; 

Support for short class names

Under the hood registers short class names using our laravel-tinker-tools package. So instead of

php artisan dd "\App\Models\NewsItem::first()"; 

you can do this:

php artisan dd "NewsItem::first()"; 

A word to the wise

This command can run arbitrary code by using PHP's eval. Be aware that this can be potentially dangerous. By default the command will only run in a local environment. You can make it run in other environments by setting an ALLOW_DD_COMMAND enviroment variable to true.

Changelog

Please see CHANGELOG for more information what has changed recently.

Testing

$ composer test

Contributing

Please see CONTRIBUTING for details.

Security

If you've found a bug regarding security please mail security@spatie.be instead of using the issue tracker.

Credits

Idea: Sebastian De Deyne

License

The MIT License (MIT). Please see License File for more information.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport