Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么url后面有问号?_Php_Laravel_Routing - Fatal编程技术网

Php 为什么url后面有问号?

Php 为什么url后面有问号?,php,laravel,routing,Php,Laravel,Routing,我已经创建了路线 Route::get('/files/{file}/edit', 'FilesController@edit')->middleware(['file_owner'])->name('files.edit'); 来自中间件的代码: $file = $request->route('file'); if($file->owner_id === auth()->user()->id){ return $next

我已经创建了路线

 Route::get('/files/{file}/edit', 'FilesController@edit')->middleware(['file_owner'])->name('files.edit');
来自中间件的代码:

$file = $request->route('file');
      if($file->owner_id === auth()->user()->id){
          return $next($request);
      }
当我从我的视野进入这条路线时

<form action="{{route('files.edit', $file->id)}}" >
    <button type="submit" class="btn btn-success btn-sm">Edit file</button>
</form>

编辑文件
我得到的链接如下:
http://testproject.local/files/17/edit?

它不会影响功能,但对我来说非常有趣,问号出现在这里的原因是什么?

这个
表示查询参数的开始

当您的
没有
method=”“
属性时,它会在提交时执行
GET
请求。所有
等元素都以查询参数的形式附加到URL:

https://www.example.com?name=whatever&something=another...
由于您的
中没有任何
元素,因此只需添加一个
来表示您没有任何元素

同样,这不会影响功能,但会提出问题;您需要一个
吗?您只需使用锚点
即可处理简单的
GET
请求,而无需查询参数:

<a href="{{ route('files.edit', $file->id) }}">Edit File</a>


这将带您到达路线
http://testproject.local/files/17/edit
,没有附加

因为表单的方法是
GET
,这意味着表单数据作为一个函数附加到操作中。但是由于表单中没有任何输入,因此只添加了一个

默认的
方法是GET,这意味着通过url传递值,其工作方式类似于

example.com?key=value

您没有指定值,但方法保留,并附加?

您正在发送HTTP请求GET方法,在该方法中,您可以在url?key=value等问号后传递url中的参数和值,然后在服务器端处理输入。您的表单中没有任何输入,因此问号后面没有任何内容