在我安装**XAMPP 8(PHP 8)**之前,代码一直运行良好。
if(isset($_POST["submit"])){
@$subject = $_POST['subject'];
@$term = $_POST['term'];
@$session = $_POST['session'];
@$size = count($_POST['adm_num']);
@$size = count($_POST['ca1']);
@$size = count($_POST['ca2']);
@$size = count($_POST['ca3']);
$i = 0;
while ($i < $size) {
$ca1= $_POST['ca1'][$i];
$ca2= $_POST['ca2'][$i];
$ca3= $_POST['ca3'][$i];
$adm_num = $_POST['adm_num'][$i];
}
}
7条答案
按热度按时间vsdwdz231#
您必须先使用array()定义变量,然后才能使用它。或
d5vmydt92#
在PHP8.0上,强制类型是在Count上定义。
试试这个代码
ua4mk5z43#
轻松修复..
谢谢
gijlo24d4#
在PHP8中不能工作,您必须这样做
剩下的时间都这样
nwsw7zdq5#
引用count()的官方php文档:
计算数组中的所有元素或对象中的某些项目。
你得到的错误是很明显的。这四个变量(
$_POST['adm_num']
,$_POST['ca1']
,$_POST['ca2']
,$_POST['ca3']
)中有一个不是数组或者更多。你可以使用gettype()来找出变量的类型,它会告诉你哪个变量不包含数组,然后你可以把它改为
array
。$size
变量三次。为什么?*qyzbxkaa6#
为了更容易更新PHP 8的代码,我制作了自己的函数
然后我用count_($value)批量替换了count($value)
hmmo2u0o7#
在道克上面写着:
返回值返回值中的元素数。当参数既不是数组也不是实现了Countable接口的对象时,将返回1。有一个例外,如果值为空,将返回0。
它看起来像一只虫子?!?