Barisan arahan artisan
Pengenalan kepada Artisan Command Line
- Baris Perintah ArtisanTinker Command (REPL)
- tentukan jangkaan input Arahan I/O
- Daftar arahan
- Laksanakan arahan secara pemprograman
list
: php artisan list
Setiap arahan termasuk antara muka Bantuan yang memaparkan dan meringkaskan hujah dan pilihan yang tersedia untuk arahan itu. Cuma tambah help
sebelum arahan untuk melihat antara muka bantuan arahan:
php artisan help migrate
php artisan tinker
每个命令都包含了「帮助」 界面 ,它会显示和概述命令的可用参数及选项。只需要在命令前加上 help
即可查看命令帮助界面 :
php artisan vendor:publish --provider="Laravel\Tinker\TinkerServiceProvider"
Tinker 命令 (REPL)
所有 Laravel 应用都包含了 Tinker,一个基于 PsySH 包提供支持的 REPL 。Tinker 让你可以在命令行中与你整个的 Laravel 应用进行交互 。 包括 Eloquent ORM、任务、事件等等。运行 Artisan 命令 tinker
进入 Tinker 环境:
'commands' => [ // App\Console\Commands\ExampleCommand::class, ],
你可以通过使用 vendor:publish
tinker
untuk memasuki persekitaran Tinker: 🎜'dont_alias' => [ App\User::class, ],🎜 Anda boleh menerbitkan fail konfigurasi Tinker dengan menggunakan perintah
vendor:publish
: 🎜php artisan make:command SendEmails🎜🎜
Command Whitelist
Tinker menggunakan senarai putih untuk menentukan arahan Artisan yang dibenarkan untuk dijalankan dalam shell. Secara lalai, anda boleh menjalankan clear-compiled
, down
, env
, inspire
, migrate / perintah kod>,
dan up
. Jika anda ingin menambah lebih banyak arahan senarai putih, anda boleh menambahkannya pada tatasusunan commands
dalam fail konfigurasi tinker.php
: clear-compiled
、down
、env
、 inspire
、migrate
、 optimize
、和 up
命令。如果你想要添加更多的白名单命令,可以将它们添加到 tinker.php
配置文件中的 commands
数组里:
<?php namespace App\Console\Commands; use App\User;use App\DripEmailer; use Illuminate\Console\Command; class SendEmails extends Command{ /** * The name and signature of the console command. * * @var string */ protected $signature = 'email:send {user}'; /** * The console command description. * * @var string */ protected $description = 'Send drip e-mails to a user'; /** * Create a new command instance. * * @return void */ public function __construct() { parent::__construct(); } /** * Execute the console command. * * @param \App\DripEmailer $drip * @return mixed */ public function handle(DripEmailer $drip) { $drip->send(User::find($this->argument('user'))); } }
黑名单别名
通常,Tinker 会在 Tinker 中根据你的需要自动为类添加别名。然而,你可能不希望为某些类添加别名。你可以在 tinker.php
配置文件中的 dont_alias
数组里列举这些类来完成此操作:
/** * Register the Closure based commands for the application. * * @return void */ protected function commands(){ require base_path('routes/console.php'); }
编写命令
除 Artisan 提供的命令外,你还可以构建自己的自定义命令。 命令通常存储在 app/Console/Commands
目录中;不过,只要你的命令可以由 Composer 加载,你就可以自由选择自己的存储位置。
生成命令
要创建一个新的命令,可以使用 Artisan 命令 make:command
。这个命令会在 app/Console/Commands
目录中创建一个新的命令类。 不必担心应用中不存在这个目录,因为它会在你第一次运行 Artisan 命令 make:command
时创建。生成的命令会包括所有命令中默认存在的属性和方法:
Artisan::command('build {project}', function ($project) { $this->info("Building {$project}!"); });
命令结构
命令运行后,你应该先填写 signature
和 description
属性以便你在输入 php artisan list
时能够清楚知道用法。执行命令时会调用 handle
方法,你可以在这个方法中放置命令逻辑。
{tip} 为了代码更好的复用,最好保持你的控制台代码轻量并且能够延迟到应用服务中完成。在下面的例子中,我们将注入一个服务类来完成发送邮件的重任。
来看一个简单的例子。我们可以在 handle
use App\User; use App\DripEmailer;Artisan::command('email:send {user}', function (DripEmailer $drip, $user) { $drip->send(User::find($user)); });
Alias Senarai HitamBiasanya, Tinker akan menambah alias secara automatik pada kelas dalam Tinker berdasarkan keperluan anda. Walau bagaimanapun, anda mungkin tidak mahu menambah alias pada beberapa kelas. Anda boleh melakukan ini dengan menyenaraikan kelas ini dalam tatasusunan dont_alias
dalam fail konfigurasi tinker.php
:
Artisan::command('build {project}', function ($project) { $this->info("Building {$project}!"); })->describe('Build the project');🎜 < div name="43428a" data-unique="43428a">🎜
Menulis arahan
🎜Selain arahan yang disediakan oleh Artisan, anda juga boleh membina arahan tersuai anda sendiri. Perintah biasanya disimpan dalam direktoriapp/Console/Commands
namun, selagi arahan anda boleh dimuatkan oleh Komposer, anda bebas memilih lokasi storan anda sendiri. 🎜🎜🎜🎜Menjana arahan
🎜Untuk mencipta arahan baharu, anda boleh menggunakan Artisan Perintahmake:command
. Perintah ini akan mencipta kelas arahan baharu dalam direktori app/Console/Commands
. Jangan bimbang tentang direktori ini tidak wujud dalam aplikasi anda, kerana ia akan dibuat pada kali pertama anda menjalankan perintah Artisan make:command
. Perintah yang dijana akan termasuk sifat dan kaedah yang wujud secara lalai dalam semua arahan: 🎜/** * The name and signature of the console command. * * @var string */ protected $signature = 'email:send {user}';🎜🎜🎜
Struktur perintah
🎜Selepas menjalankan arahan, anda perlu mengisi atributtandatangan
dan description
dahulu supaya anda dapat mengetahui dengan jelas apabila memasukkan php artisan senarai
penggunaan. Kaedah handle
akan dipanggil semasa melaksanakan arahan Anda boleh meletakkan logik arahan dalam kaedah ini. 🎜🎜{tip} Untuk penggunaan semula kod yang lebih baik, sebaiknya pastikan kod konsol anda ringan dan menangguhkan penyiapan kepada perkhidmatan aplikasi. Dalam contoh berikut, kami akan menyuntik kelas perkhidmatan untuk menyelesaikan tugas menghantar e-mel. 🎜🎜Mari kita lihat contoh mudah. Kami boleh menyuntik sebarang kebergantungan yang kami perlukan dalam kaedah
handle
. Bekas perkhidmatan Laravel secara automatik akan menyuntik semua kebergantungan dengan kekangan jenis dalam pembina:🎜// 可选参数... email:send {user?} // 带有默认值的可选参数... email:send {user=foo}🎜🎜🎜🎜🎜🎜
Arahan Penutupan
Arahan berasaskan penutupan menyediakan cara untuk menggunakan kelas dan bukannya mentakrifkan arahan konsol. Dengan cara yang sama, penghalaan penutupan adalah alternatif kepada pengawal, dan arahan penutupan boleh dianggap sebagai alternatif kepada kelas arahan. Dalam kaedah commands
fail app/Console/Kernel.php
, Laravel memuatkan fail routes/console.php
:app/Console/Kernel.php
文件的 commands
方法中,Laravel 加载了 routes/console.php
file:
/** * 命令行的名称及签名。 * * @var string */ protected $signature = 'email:send {user} {--queue}';
虽然这个文件没有定义 HTTP 路由,但是它将基于控制台的入口点(路由)定义到了应用中。在这个文件,你可以使用 Artisan::command
方法定义所有的闭包路由。 command
方法接受两个参数: 命令名称 和一个接受命令参数及选项的闭包:
php artisan email:send 1 --queue
闭包绑定底层的命令实例,因为你可以访问所有能够在完整命令类中的所有辅助方法。
类型提示依赖
除了接收命令的参数和选项外,命令闭包也可以使用类型提示从 服务容器 中解析其他的依赖关系:
/** * 命令行的名称及签名。 * * @var string */ protected $signature = 'email:send {user} {--queue=}';
闭包命令描述
当你定义一个闭包命令,你应当使用 describe
方法来为命令添加描述。这个描述会在你运行 php artisan list
或者 php artisan help
命令时显示:
php artisan email:send 1 --queue=default
定义输出期望
在编写控制台命令时,通常是通过参数和选项来收集用户输入的。Laravel 可以通过 signature
属性非常方便的定义你期望用户输入的内容。signature
允许使用单一且可读性高,类似路由的语法定义命令的名称、参数和选项。
参数
所有用户提供的参数及选项都被包含在花括号中。在下面的例子中,这个命令定义了一个 必须的参数: user
:
email:send {user} {--queue=default}
你也可以创建可选参数,并定义参数的默认值:
email:send {user} {--Q|queue}
选项
选项,类似于参数,是用户输入的另一种格式。当命令行指定选项时,它们以两个连字符 ( --
) 作为前缀。有两种类型的选项:接收值和不接收值。不接收值的选项就像是一个布尔值的「开关」。让我们看一下这种类型的选项的例子:
email:send {user*}
在这个例子中,可以在调用 Artisan 命令时指定 --queue
开关。如果 --queue
开关被传递,该选项的值为 true
, 否则为 false
php artisan email:send foo barWalaupun ini Fail tidak mentakrifkan laluan HTTP, tetapi ia mentakrifkan titik masuk (laluan) berasaskan konsol ke dalam aplikasi. Dalam fail ini, anda boleh menentukan semua laluan penutupan menggunakan kaedah
Artisan::command
. Kaedah command
menerima dua parameter: Nama arahan dan penutupan yang menerima parameter dan pilihan arahan: email:send {user} {--id=*}
php artisan email:send --id=1 --id=2
Penutupan mengikat Perintah asas instance kerana anda mempunyai akses kepada semua kaedah pembantu yang tersedia dalam kelas arahan penuh.
Kebergantungan yang dibayangkan jenis
/** * 命令行的名称及签名。 * * @var string */ protected $signature = 'email:send {user : The ID of the user} {--queue= : Whether the job should be queued}';
Penerangan arahan penutupan
🎜Apabila anda mentakrifkan arahan penutupan, anda harus menggunakan huraikan kaedah
untuk menambah penerangan pada arahan. Penerangan ini akan dipaparkan apabila anda menjalankan perintah php artisan list
atau php artisan help
: 🎜/** * 执行命令。 * * @return mixed */ public function handle(){ $userId = $this->argument('user'); // }🎜🎜🎜< div name="b603e9" data-unique="b603e9">🎜
Tentukan jangkaan output
🎜Apabila menulis arahan konsol, input pengguna biasanya dikumpul melalui parameter dan pilihan. Laravel menjadikannya sangat mudah untuk mentakrifkan perkara yang anda harapkan pengguna masukkan melalui atributsignature
. tandatangan
membolehkan anda mentakrifkan nama perintah, parameter dan pilihan menggunakan sintaks tunggal, boleh dibaca, seperti laluan. 🎜🎜🎜🎜$arguments = $this->arguments();🎜Anda juga boleh mencipta parameter pilihan dan menentukan nilai lalainya:🎜
// 获取一个指定的选项值 $queueName = $this->option('queue'); // 获取所有的选项值 $options = $this->options();🎜🎜🎜
--
). Terdapat dua jenis pilihan: menerima nilai dan tidak menerima nilai. Pilihan yang tidak menerima nilai adalah seperti "suis" boolean. Mari lihat contoh pilihan jenis ini: 🎜/** * 执行命令。 * * @return mixed */ public function handle(){ $name = $this->ask('What is your name?'); }🎜Dalam contoh ini, suis
--queue
boleh ditentukan apabila memanggil arahan Artisan. Nilai pilihan ini adalah true
jika suis --queue
diluluskan, false
jika tidak: 🎜$password = $this->secret('What is the password?');🎜🎜🎜🎜🎜🎜
Pilihan dengan nilai
Seterusnya, mari lihat pilihan dengan nilai. Jika anda mahu pengguna perlu menentukan nilai untuk pilihan, anda perlu menambahkan tanda sama =
sebagai akhiran pada akhir nama pilihan: =
作为的后缀:
if ($this->confirm('Do you wish to continue?')) { // }
在这个例子中, 用户可以传递该选项的值,如下所示:
$name = $this->anticipate('What is your name?', ['Taylor', 'Dayle']);
你也可以通过在选项名称后面指定默认值来设定该选项的默认值。如果用户没有传递选项值,将使用设定的默认值:
$name = $this->choice('What is your name?', ['Taylor', 'Dayle'], $defaultIndex);
选项简写
要在定义选项时指定简写,你可以在选项名称前指定它,并用 |
分隔符将简写与完整选项名称分隔开:
/** * 执行命令。 * * @return mixed */ public function handle(){ $this->info('Display this on the screen'); }
输入数组
如果你想定义接收数组输入的参数或选项,你可以使用 *
符号。首先,我们先看一个数组参数的实例:
$this->error('Something went wrong!');
调用此方法时,该 user
参数的输入参数可按顺序传递给命令行。例如,以下命令会设置 user 的值为 ['foo', 'bar']
:
$this->line('Display this on the screen');
当定义接收数组的选项时,传递给命令行的每个选项值都应以选项名称为前缀:
$headers = ['Name', 'Email']; $users = App\User::all(['name', 'email'])->toArray(); $this->table($headers, $users);
输入说明
你可以通过使用冒号来为参数和选项添加说明,并使其将他们隔开。如果你需要一点额外的空间来定义你的命令,可以随意分开在多个行里:
$users = App\User::all(); $bar = $this->output->createProgressBar(count($users)); $bar->start();foreach ($users as $user) { $this->performTask($user); $bar->advance(); }$bar->finish();
Command I/O
获取输入
在命令执行时,显然你需要获取命令接收到的参数和选项的值。你可以用 argument
和 option
方法来达到目的:
/** * 注册应用的命令 * * @return void */ protected function commands(){ $this->load(__DIR__.'/Commands'); $this->load(__DIR__.'/MoreCommands'); // ... }
如果你想所有的参数以 array
数组获取,可以调用 arguments
方法:
protected $commands = [ Commands\SendEmails::class ];
和获取参数类似,option
方法可以非常容易的获取选项的值。要将所有的选项以数组获取,使用 options
方法:
Route::get('/foo', function () { $exitCode = Artisan::call('email:send', [ 'user' => 1, '--queue' => 'default' ]); // });
如果参数或选项不存在,则返回 null
Artisan::call('email:send 1 --queue=default');Dalam contoh ini, pengguna boleh melepasi nilai pilihan seperti berikut Ditunjukkan:
Route::get('/foo', function () { Artisan::queue('email:send', [ 'user' => 1, '--queue' => 'default' ]); // });Anda juga boleh menetapkan nilai lalai untuk pilihan dengan menyatakan nilai lalai selepas nama pilihan. Jika pengguna tidak melepasi nilai pilihan, nilai lalai yang ditetapkan akan digunakan:
Artisan::queue('email:send', [ 'user' => 1, '--queue' => 'default' ])->onConnection('redis')->onQueue('commands');
Route::get('/foo', function () { $exitCode = Artisan::call('email:send', [ 'user' => 1, '--id' => [5, 13] ]); });🎜🎜🎜
Input array
🎜Jika anda ingin menentukan parameter atau pilihan yang menerima input tatasusunan, anda boleh menggunakan < kod>*< /kod> simbol. Mula-mula, mari lihat contoh parameter tatasusunan: 🎜$exitCode = Artisan::call('migrate:refresh', [ '--force' => true, ]);🎜Apabila memanggil kaedah ini, parameter input parameter
user
boleh dihantar ke baris arahan mengikut urutan. Sebagai contoh, arahan berikut akan menetapkan nilai pengguna kepada ['foo', 'bar']
: 🎜/** * 执行控制台命令 * * @return mixed */ public function handle(){ $this->call('email:send', [ 'user' => 1, '--queue' => 'default' ]); // }🎜Apabila mentakrifkan pilihan yang menerima tatasusunan, setiap nilai pilihan yang dihantar ke baris arahan harus mulakan dengan Nama pilihan diawali dengan: 🎜
$this->callSilent('email:send', [ 'user' => 1, '--queue' => 'default' ]);🎜🎜🎜
Input descriptions
🎜Anda boleh melakukan ini dengan menggunakan Gunakan titik bertindih untuk menerangkan dan memisahkan parameter dan pilihan. Jika anda memerlukan sedikit ruang tambahan untuk mentakrifkan perintah anda, jangan ragu untuk memecahkannya pada berbilang baris: 🎜rrreee🎜🎜🎜I/O Arahan
🎜🎜🎜Mendapatkan input h3>🎜Apabila arahan dilaksanakan, jelas sekali anda perlu mendapatkan nilai parameter dan pilihan yang diterima oleh arahan itu. Anda boleh menggunakan kaedah argument
dan option
untuk mencapai ini: 🎜rrreee🎜Jika anda mahu semua parameter diperolehi sebagai tatasusunan array
, anda boleh memanggil kaedah arguments
: 🎜rrreee🎜Sama seperti mendapatkan parameter, kaedah option
boleh mendapatkan nilai pilihan dengan mudah. Untuk mendapatkan semua pilihan sebagai tatasusunan, gunakan kaedah options
: 🎜rrreee🎜Jika parameter atau pilihan tidak wujud, kembalikan null
. 🎜🎜🎜🎜🎜🎜🎜Input Interaktif
Selain memaparkan output, anda juga boleh meminta pengguna memberikan input semasa arahan itu dilaksanakan. Kaedah ask
akan menggesa pengguna untuk input dan menerimanya, dan kemudian input pengguna akan dihantar ke dalam arahan anda: ask
方法将提示用户输入并接收,然后用户的输入将会传入你的命令:
secret
方法和 ask
方法类似,但当用户在控制台输入时他们的输入内容是不可见的。这个方法适用于需要用户输入像密码这样的敏感信息的时候:
请求确认
如果你想要寻求用户确认一些简单的信息,你可以使用 confirm
方法。默认情况下,该方法将返回 false
。但如果用户在回复中输入 y
或者 yes
则会返回 true
。
自动补全
anticipate
方法可用于为可能的选择提供自动补全功能。用户仍然可以忽略自动补全的提示,作任意回答:
多重选择
如果你要给用户提供一些预设的选择,可以使用 choice
方法。你也可以设置默认值的索引,用以应对用户没有选择的情景:
编写输出
可以使用 line
、 info
、 comment
、 question
和 error
方法来将输出发送到终端。每个方法都使用适当的 ANSI
颜色表明其目的。例如,让我们向用户显示一些普通信息,通常来说,最好使用 info
方法,它会在控制台将输出的内容显示为绿色:
显示错误信息, 使用 error
方法。 错误信息则会显示为红色:
如果你想在控制台显示无颜色设置的输出,请使用 line
方法:
表格布局
对于多行列数据的格式化输出,table
rrreee
rahsia
kaedah dan ask< /code> kaedah Serupa, tetapi apabila pengguna menaip dalam konsol input mereka tidak kelihatan. Kaedah ini sesuai apabila pengguna perlu memasukkan maklumat sensitif seperti kata laluan: rrreeeMinta pengesahan
Jika anda ingin meminta pengguna mengesahkan beberapa perkara mudah maklumat , anda boleh menggunakan kaedah confirm
. Secara lalai, kaedah ini akan mengembalikan false
. Tetapi jika pengguna memasukkan y
atau ya
dalam balasan, true
akan dikembalikan.
rrreeeKaedah jangka boleh digunakan untuk menyediakan autolengkap untuk pilihan yang mungkin. Pengguna masih boleh mengabaikan gesaan autolengkap dan memberikan sebarang jawapan: rrreee
Pelbagai pilihanJika anda ingin memberikan pengguna beberapa pilihan pratetap, anda boleh Gunakan kaedah choice
. Anda juga boleh menetapkan indeks nilai lalai untuk menangani situasi di mana pengguna tidak mempunyai pilihan: rrreee🎜🎜🎜🎜🎜 Untuk menulis output🎜🎜 anda boleh menggunakan baris , maklumat , ulasan , soalan dan ralat Kaedah untuk menghantar output ke terminal. Setiap kaedah menggunakan warna ANSI
yang sesuai untuk menunjukkan tujuannya. Sebagai contoh, marilah kami memaparkan beberapa maklumat umum kepada pengguna Secara umumnya, sebaiknya gunakan kaedah info
, yang akan memaparkan kandungan output dalam warna hijau pada konsol: 🎜rrreee🎜Untuk memaparkan ralat. maklumat, gunakan kaedah < code>error. Mesej ralat akan dipaparkan dalam warna merah: 🎜rrreee🎜 Jika anda ingin memaparkan output tanpa tetapan warna dalam konsol, sila gunakan kaedah line
: 🎜rrreee🎜🎜Susun atur jadual🎜🎜Untuk output berformat data berbilang lajur, kaedah jadual lebih mudah dikendalikan. Berdasarkan pengepala jadual dan data baris yang masuk, ia akan mengira lebar dan ketinggian secara dinamik: 🎜rrreee🎜🎜🎜Bar kemajuan🎜🎜Untuk tugasan yang memakan masa, adalah sangat perlu untuk menggesa kemajuan. Gunakan objek output untuk mencipta, memuatkan dan menghentikan bar kemajuan. Mula-mula, takrifkan jumlah langkah untuk tugasan, dan kemudian muatkan bar kemajuan setiap kali tugasan dilaksanakan: 🎜rrreee🎜Lihat 🎜Symfony Progress Bar komponen dokumentasi🎜 untuk penggunaan yang lebih lanjut. 🎜🎜🎜🎜🎜🎜🎜Daftar arahan
Perintah dalam direktori app/Console/Commands
akan didaftarkan Ini kerana kaedah commands
kernel konsol memanggil load
. Malah, anda boleh memanggil load
sesuka hati untuk mengimbas arahan Artisan dalam direktori lain: app/Console/Commands
目录下的命令都会被注册,这是由于控制台内核的 commands
方法调用了 load
。实际上,可随意调用 load
来扫描其他目录下的 Artisan 命令:
rrreee也可以在 app/Console/Kernel.php
文件的 $commands
属性中手动注册命令的类名。Artisan 启动时,这个属性列出的命令都将由 服务容器 解析并通过 Artisan 进行注册:
rrreee程序调用命令
有时需要在 CLI 之外执行 Artisan 命令,例如,在路由或控制器里触发 Artisan 命令。要实现调用,可以使用 Artisan
门面的 call
方法。call
方法的第一个参数接受命令名,第二个参数接受数组形式的命令参数。退出码将返回:
rrreee另外,你可以将整个 Artisan 命令作为字符串传递给 call
方法:
rrreeeArtisan
门面的 queue
方法可以将 Artisan 命令队列化,交由 队列工作进程 进行后台处理。使用此方法之前,务必配置好队列以及运行队列监听器:
rrreee你也可以指定 Artisan 命令派发的连接或任务:
rrreee传递数组值
如果定义了接受数组的选项,可以直接传递数组到该选项:
rrreee传递布尔值
需要指定没有选项值的选项时,例如,migrate:refresh
命令的 --force
选项,就可以传入 true
或 false
:
rrreee命令的互相调用
call
方法可以实现调用其它 Artisan 命令。call
方法接受命令名和数组形式的选项:
rrreee如果要抑制控制台命令的所有输出,可以使用 callSilent
方法。callSilent
的使用方法同 call
rrreee
Anda juga boleh menggunakan $commands dalam app/Console/Kernel.php kod> fail
Nama kelas arahan yang didaftarkan secara manual dalam atribut. Apabila Artisan bermula, arahan yang disenaraikan dalam atribut ini akan dihuraikan oleh bekas perkhidmatan dan didaftarkan dengan Artisan: 🎜Arahan panggilan program🎜🎜Kadangkala perlu melaksanakan perintah Artisan di luar CLI, contohnya, mencetuskan arahan Artisan dalam penghala atau pengawal. Untuk melaksanakan panggilan, anda boleh menggunakan kaedah panggilan
fasad Artisan
. Parameter pertama kaedah call
menerima nama arahan, dan parameter kedua menerima parameter arahan dalam bentuk tatasusunan. Kod keluar akan dikembalikan: 🎜rrreee🎜Sebagai alternatif, anda boleh menghantar keseluruhan perintah Artisan sebagai rentetan ke kaedah call
: 🎜rrreee🎜 Artisan
baris gilir facade Kod> kaedah boleh beratur perintah Artisan dan menyerahkannya kepada proses pekerja beratur untuk pemprosesan latar belakang. Sebelum menggunakan kaedah ini, pastikan anda mengkonfigurasi baris gilir dan jalankan pendengar baris gilir: 🎜rrreee🎜 Anda juga boleh menentukan sambungan atau tugasan yang dihantar oleh arahan Artisan: 🎜rrreee🎜Luluskan nilai tatasusunan
🎜Jika pilihan yang menerima tatasusunan ditentukan, anda boleh menghantar tatasusunan terus ke pilihan: 🎜rrreee🎜Luluskan nilai boolean< /h4>🎜Apabila anda perlu menentukan pilihan tanpa nilai pilihan, contohnya, pilihan --force
bagi migrate:refresh< /code> arahan, anda boleh menghantar true
atau false
: 🎜rrreee🎜🎜🎜🎜Panggilan bersama bagi arahan
🎜 Kaedahpanggilan boleh digunakan untuk memanggil arahan Artisan lain. Kaedah call
menerima nama arahan dan pelbagai pilihan: 🎜rrreee🎜 Jika anda ingin menyekat semua output arahan konsol, anda boleh menggunakan kaedah callSilent
. Penggunaan callSilent
adalah sama seperti call
: 🎜rrreee🎜Artikel ini pertama kali diterbitkan di tapak web 🎜LearnKu.com🎜. 🎜🎜