工作俩年才知道$argv,表示很low!

咔咔
Lepaskan: 2020-07-03 13:55:40
asal
10524 orang telah melayarinya

最近在使用laravel实现rabbitmq方面的文章,实现到路由模式的时候遇到点问题,针对命令行传参的问题。

一、rabbitmq路由模式遇到的问题

在这份代码里边可以看到一个没有定义的变量$argv,说实话框架用多了,都不知道这玩意是什么了。

咔咔使用的是laravle框架,没有声明的变量是会直接报错的。

但是在路由模式下确实又需要这个实例,总不能执行一次去修改一下routing_key在这里插入图片描述

二、揭秘$argv

搜索php argv 后,明晃晃的解释出现在我的面前,这哥们是用来给脚本传递参数的啊!在这里插入图片描述二话不说先整一个php文件,然后测试一下。

在web目录创建一个index.php文件,然后打印出$argv在这里插入图片描述执行index.php,执行指令php index kaka

这个就有点意思了,打印出来的数据正是上文资料说的数组形式。

第一个值是执行的文件名,第二个参数就是携带给脚本的参数。在这里插入图片描述这个时候在返回来看一下rabbitmq的那份代码。

对索引为1的数据进行了容错,这个值也就是需要的routing_key在这里插入图片描述在来看一下后文给出的执行指令,就不难明白它为什么这样执行了。在这里插入图片描述

三、如何用laravel携带带参数的指令

生活还得继续,代码还得撸不是吗?用了框架就得适应框架的用法。

先创建一个命令php artisan make:command TestCommand在这里插入图片描述这时你就可以看到TestController文件。

signature是指令名在这里插入图片描述先执行一下吧!php artisan test:command,这个123是在下边的handle方法里边在这里插入图片描述在laravle中执行带参数的指令在这里插入图片描述在这里插入图片描述执行指令php artisan test:command kaka看看会出现什么。

对喽!就是指令后边的参数。

对于laralve携带参数的用法还用好几种,咔咔这里就不演示了,很是简单哄!在这里插入图片描述

Atas ialah kandungan terperinci 工作俩年才知道$argv,表示很low!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan