PHP_获取数组中的值

PHP_获取数组中的值,php,get,Php,Get,在选择项目并按下提交按钮后,我有一个项目列表 url栏中有这样一种查询: adrese-id=7&food-id=1&food-id=2&food-id=3&food-id=4 尝试获取数组中的所有食物ID,但到目前为止运气不佳,尝试执行以下操作: $ids = $_GET['food-id']; 但它只有最后一个值,即4 如何在数组中获取这些值?您必须命名字段以指示它是“数组”。因此,不要使用food id,而是在末尾添加括号,使其成为food id[] 例

在选择项目并按下提交按钮后,我有一个项目列表 url栏中有这样一种查询:

adrese-id=7&food-id=1&food-id=2&food-id=3&food-id=4
尝试获取数组中的所有食物ID,但到目前为止运气不佳,尝试执行以下操作:

$ids = $_GET['food-id'];
但它只有最后一个值,即4


如何在数组中获取这些值?

您必须命名字段以指示它是“数组”。因此,不要使用
food id
,而是在末尾添加括号,使其成为
food id[]

例如:

<input type="checkbox" name="food-id[]" value="1"> Pizza
<input type="checkbox" name="food-id[]" value="2"> Cheese
<input type="checkbox" name="food-id[]" value="3"> Pepperonis
比萨饼
奶酪
佩珀罗尼斯

在PHP中访问它将是相同的,
$\u GET['food-id']
(但这次它将是一个数组)。

在PHP中,
$\u GET
数组具有
$key=>$value
对。本例中的“食物id”是
$key
。 因为所有值(1,2,3,4)都有相同的键:“食物id”,所以数组如下所示:

$_GET = [
'food-id' => 1,
'food-id' => 2,
'food-id' => 3,
'food-id' => 4,
]
将始终使用使用的最后一对
$key=>$value
对解析此项:

$_GET = [
'food-id' => 4
]

解决方法是始终在数组中使用唯一键。

您确实需要提供生成值的HTML片段。但是,如果您查看GET请求,则食物id的值不会作为数组提交,这可能是您想要的。您的GET请求应该更像:

地址id=7和食物id[]=1和食物id[]=2和食物id[]=3和食物id[]=4


这将为您提供有关HTML表单值应如何命名的线索。

请添加生成请求的HTML。您是否已尝试
$\u获取[]
了?可能的重复项。