我刚刚开始使用PHP内置gettype()
及其返回值。此函数能够返回测试结果,例如boolean
,integer
,unknown type
等。但在这些测试结果中,有一个引起了我的注意:未知类型。
在阅读gettype()
并尝试在此处找到一些参考资料后,我无法获得任何参考资料。
那么,问题是什么类型的类型可以归类为unknown type
?
是否有可能或者我只是缺少读书?
答案 0 :(得分:20)
以下是您的一种未知类型:
$f = fopen('somefile.txt','r');
echo gettype($f); // resource
fclose($f);
echo gettype($f); // unknown
基本上,只要关闭resource pointer,持有句柄的变量就会指向未知资源。另一个例子是GD'S imagecreate / imagedestroy。
注意:从PHP 7.2开始,这不再适用。 gettype
将返回resource (closed)
。
答案 1 :(得分:6)
根据PHP源代码,它是该函数的switch语句中的“默认”情况。我的猜测是有办法处理内部错误。