我需要在 JSON 文件中写入目录和文件列表的最后修改日期,但我无法做到这一点,这里有一些代码:
$dir = Yii::app()->basePath.'/../uploads';
$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir), RecursiveIteratorIterator::SELF_FIRST);
$date = date('d-m-Y');
$i=0;
foreach($objects as $name => $object){
print_r($i);
$resultado = array(
'fecha' => $date,
'archivo' => $objects->getFilename(),
'ruta'=>$objects->getPathname(),
'modificacion' => filemtime($name),
);
$i++;
echo CJSON::encode($resultado);
print_r("</br>");
}
我需要"修饰",我也尝试过:
$objects->getMtime();
$objects::getMtime();
$object->getMtime();
$object::getMtime();
$name->getMtime();
$name::getMtime();
filemtime($name);
filemtime($objects);
filemtime($object);
错误:
Fatal error: Call to undefined method RecursiveIteratorIterator::getMTime()
谢谢!
您需要
对文件名调用filemtime
,而不是映射到迭代器元素的键。
像这样:
filemtime(realpath($objects->getPathname().DIRECTORY_SEPARATOR.$objects->getFilename()));
这使用realpath来纠正诸如额外斜杠之类的内容。