猿问

中间件中判断问题

我通过get方式传递一个age=22的参数,$request->age可获取到相应的值,但是执行下图13行代码时,为什么if判断通过了,直接输出14行内容了?

https://img3.mukewang.com/5bd17c350001066805040110.jpg

https://img1.mukewang.com/5bd17c410001cbcf07500346.jpg

暮色呼如
浏览 1133回答 2
2回答

偶然的你

根本没有理解传参数的用法啊。你是刚用laravel吧。使用不对的。你写的{age}只是一个占位符类似的东西,你路由后面跟的age=22,那相当于参数就是age=22啊。你直接跟上22就行了,不用加age。谢谢

慕村9548890

你的访问的url不对的,Route::get('/ages=test/{age}',['middleware'=>'test',function($age){    return "年龄符合标准";}]);这个路由 传参的时候,age只需要传数字,不要age=22 这个就是字符串了,所以dd($request->age)出来是“age=22”,数字比较的时候,字符串转换为0 ,所以一直进入if语句
随时随地看视频慕课网APP
我要回答