使PHP闭包函数对PHP 5.2安全
作者:互联网
以下函数适用于PHP> 5.3但旧版本中的错误.如何修改它以使其安全?
function _iniloader_get_dirs($dir) {
$dirs = array_filter(scandir($dir), function ($item) use ($dir) {
return (is_dir($dir.'/'.$item) && $item != "." && $item != "..");
});
// Use array_values to reset the array keys:
return array_values($dirs);
}
5.2错误:
Parse error: syntax error, unexpected T_FUNCTION … on
line 2
解决方法:
你可以轻松地完成闭合,但你会失去一些优雅:
function _iniloader_get_dirs($dir) {
$dirs = array();
$entries = scandir($dir);
foreach($entries as $item) {
if($item === '.' || $item === '..') continue;
if(!is_dir($dir.'/'.$item)) continue;
$dirs[] = $item;
}
return $dirs;
}
标签:php,closures,php-5-2 来源: https://codeday.me/bug/20190902/1791841.html