【发布时间】:2021-05-17 14:33:13
【问题描述】:
自从升级到 PHP 7.2 后,我现在在尝试获取 PHP 会话中的值数量时收到此警告
Parameter must be an array or an object that implements Countable in
我尝试用来获取值数量的代码是
$numSelected = count($_SESSION['selectStandards']);
和
$numSelected = sizeof($_SESSION['selectStandards']);
我认为php会话是一个数组,但我的理解似乎不正确,但我不确定如何将会话转换为数组。
话虽如此,将我的代码保持原样会导致我的问题更进一步吗?我现有的代码完全按原样工作。
这是 $_SESSION['selectStandards'] 的 var_dump
array(4) { [0]=> string(6) "107732" [1]=> string(6) "107733" [2]=> string(6) "107731" [3]=> string(6) "107734" }
【问题讨论】:
-
数组中的特定元素不是数组
-
@Andreas 我不完全确定你的意思是什么
-
做
var_dump($_SESSION['selectStandards']);你会看到它不是一个数组或一个可数的对象。 PHP 会话是数组,但它们包含的值可以是任何值。 -
@JohnConde 会将会话转换为数组修复它吗?
-
这是一个数组,所以you shouldn't be getting this error。在您尝试对其项目进行计数时,该项目是否存在于您的会话中?你在某处遗漏了一些东西。