我有一个如下所示的类(缩短):
class Request
{
/**
* @var array $get get request, singleton
*/
private static $get = [];
/**
* Returns an instance of the request
*
* @param string $string request type to return
*
* @return array instance of request array
*/
public static function getInstance($string)
{
switch ($string) {
case 'get':
if (count(static::$get) === 0) {
static::$get = filter_input_array(INPUT_GET);
}
return static::$get;
break;
}
}
}
该行if (count(static::$get) === 0) {
引发警告
Warning: count(): Parameter must be an array or an object that implements Countable
我知道 PHP 7 及更高版本的变化,但我不明白为什么 static::$get 不被称为数组,它应该是可数的。我哪里想错了?它是一个空数组,所以计算它应该占 0?