【发布时间】:2020-01-12 23:55:18
【问题描述】:
我的情况与其他人相似,尝试了他们的建议,但对我不起作用。
usort($file, create_function('$a,$b', 'return filemtime($a)<filemtime($b);'));
代码代表我们客户端仪表板中的 pdf 显示(随机 pdf 显示),以便他们能够下载。但是,我尝试将它们转换为本机函数,但 pdf 显示仅显示上传的 pdf 文件的最后。
usort($file, function($a, $b) {
return filemtime($a) < filemtime($b);
} );
这是上面的代码,我尝试将create_function 更改为function(),但它不会改变显示。
我不拥有此代码。它被分配给我来修复它。
更新: 如果您需要完整的代码,就在这里。
if($newDIR != "" && is_dir($newDIR)) {
$file = File::allFiles($newDIR);
usort($file, create_function('$a,$b', 'return filemtime($a)<filemtime($b);'));
foreach($file as $files) {
$fileInfo = pathinfo($files);
$name = $fileInfo['filename'];
$size = File::size($files);
$datemodiy = File::lastModified($files);
$size = $size/1048576;
$fileLink = str_replace('\\', '/', $fileInfo['dirname']).'/'.$fileInfo['basename'];
$folderLink= str_replace('documents/','',$mainDIR);
$date2 = date('Y-m-d',$datemodiy);
$dateno = date('Y-m-d');
$intervalDate = (int)abs((strtotime($dateno) - strtotime($date2))/(60*60*24*30));
if($intervalDate <= 2) {
$fileDir[] = array('link'=>$fileLink,'name'=>$name,'size'=>$size,'datemodiy'=>$datemodiy,'folderLink'=>$folderLink);
}
} // end for each
} // if $dir
更新:
上面我用来替换旧的create_function 的代码没问题...并且工作正常。我之所以持怀疑态度,只是因为我一次下载了所有文件,而不是手动逐个下载不同的文件。我现在看到每个 pdf 都显示随机文件。
【问题讨论】:
-
这是上面的代码,但它不会改变显示 - 你能解释一下你的意思吗?
-
我更新了我的问题并包含了整个代码。
-
@iMarkDesigns 你解决了这个问题吗?或任何更新?
-
@PrafullaKumarSahu 我注意到代码在我将其更改为
function(){}后运行良好... -
@iMarkDesigns 所以为你做一个更紧密的工作,这是我的第一个建议?