我想获取通过$ _GET提交的值的数量。我将使用for循环,每7个将被保存到一个类。有谁知道如何找到$ _GET数组的Size_of?我浏览了这个信息$_GET Manual,但看不到我在找什么。
这是我在提交后访问的课程中开始的代码片段。
for($i=0;$i<$_GET<size>;$i++) {
$ID = $_GET["ID"][$i];
$Desc = $_GET["Desc"][$i];
$Yevaluation = $_GET["Yevaluation"][$i];
$Mevaluation = $_GET["Mevaluation"][$i];
$Cevaluation = $_GET["Cevaluation"][$i];
$Kevaluation = $_GET["Kevaluation"][$i];
$comment = $_GET["comment"][$i];
//saving bunch to class next
}
答案 0 :(得分:7)
答案 1 :(得分:2)
count($_GET["ID"])
可行。但是,您必须确保每个索引包含相同数量的元素。
更安全的是
min(count($_GET["ID"]), count($_GET["Desc"]), ...)
使用array_map
这可能是以下内容的快捷方式:
min(array_map(count, $_GET))
如果对你来说似乎很难,请仔细考虑最后一个。它被称为函数式编程,它是一种快捷方式来缩短某些东西。实际上array_map
在数组的每个元素上调用另一个函数。它实际上与:
$filteredGet = array();
foreach ($element in $_GET) { // this is the array_map part
$filteredGet[] = count($element);
}
min($filteredGet);
更好的是$i
是数组的第一级的结构,但我认为这不可能(内置)使用PHP $_GET
- 解析。