[英]PHP - Display Content in Json with Specific File Extension & Huge Records
作为一个PHP开发人员,我陷入了困境。 我的移动应用程序开发人员需要一个API在我的PHP代码只会imagenames从文件夹返回与下面的扭曲
1) wp-content / uploads / 2015/04文件夹中几乎有15,000张图像,导致页面超时。
我尝试的是以下代码,如果该文件夹中的图像数量较少,那么效果很好。在这种情况下,我应该怎么办。
<?php
$dir = "wp-content/uploads/2015/04";
$return_array = array();
if(is_dir($dir)){
if($dh = opendir($dir)){
while(($file = readdir($dh)) != false){
if($file == "." or $file == ".."){
} else {
$return_array[] = $file; // Add the file to the array
}
}
}
echo json_encode($return_array);
}
?>
我建议使用set_time_limit()将php时间限制设置为更高。
另外,请尝试将结果缓存在数据库或文件中,这样就不必每次都进行昂贵的查找。
可能更快的opendir替代方法是使用外壳程序的“ ls”命令(请注意,这是特定于OS的,因此降低了代码的可移植性)。
例如:
echo json_encode(explode("\n", trim(`ls -1 wp-content/uploads/2015/04`)));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.