php数组取值问题

图片描述
我发送这样一条formdata数据到后台 后台gettype打印显示是一个array 我用foreach可以输出数据
但是下面这样写取数组的第一个aaa的值为什么报错呢?
$file= $request->all()
echo $file[0]
图片描述

阅读 3k
5 个回答

$file['aaa']

1楼正解。关联数组,你要用数字索引的话,array_keys($request->all())

建议以后遇到类似这种变量相关的问题,打断点或dump一下变量就明白了。这里的$files变量应该长这样

[
    'aaa' => bbb,
    'dddd' => UploadedFile对象
]

所以0下标并不存在

数据结果你搞混了,PHP 接收的到的数据和前端传递的一致。
例如 HTTP GET 请求: http://127.0.0.1/index.php?key=val&key1=val1
这时PHP 的超全局变量 $_GET 如下:

array(
  'key' => 'val',
  'key1' => 'val1',
)

这种键值对的格式,数组中不存在下标 0

你表单中的name是aaa,取的时候用0取肯定没有啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题