为什么代码返回false

时间:2013-01-03 08:27:30

标签: php joomla

我有以下代码,即使我上传了一个有效扩展名的文件,也会返回false?

$file = JRequest::getVar('filename', null, 'files', 'array');

jimport('joomla.filesystem.file');

if(strtolower(JFile::getExt($file)) == 'pdf' || strtolower(JFile::getExt($file)) == 'gif' || strtolower(JFile::getExt($file)) == 'jpg' || strtolower(JFile::getExt($file)) == 'png') {
  // ..
}
else {
  // ..
}

1 个答案:

答案 0 :(得分:1)

joomla API的

JFile::getExt()函数返回任何文件的扩展名,但我认为如果你的文件没有扩展名就有错误,例如自述文件没有任何扩展名,在这种情况下它应该是返回null,但它返回完整的文件路径。

所以,我们应该使用这个更好的替代方案

pathinfo ($file_path,PATHINFO_EXTENSION);

Read more

Read this for eg& This too