可能重复:
检查PHP中是否存在目录
我正在尝试使用scandir()检查目录的内容并使用javascript发送路径参数并尝试加载#container div中的内容:
$("#container").load("fetch_images.php?path="+pathvariable);
Run Code Online (Sandbox Code Playgroud)
在fetch_images.php中我试图scandir($_GET['pathvariable'])扫描给定目录的元素.我的问题是如果没有使用$ _GET ['pathvariable']提供正确的路径,页面会显示一些警告和错误.
尝试扫描$files_dir_results = scandir($path);并使用foreach()显示数组的所有结果.
我不想在输出页面上显示任何类型的警告或错误.我知道我可以禁用PHP警告但我更喜欢更好的选择.
我不知道如何检查scandir()是否正在撤回任何错误或警告.谢谢.
您应该首先使用is_dir检查路径是否有效,然后对其进行扫描
$images = array();
$valid_images = array('jpg','png','gif');
if(is_dir($_GET['path'])){
foreach(scandir($_GET['path']) as $file){
$ext = pathinfo($file, PATHINFO_EXTENSION);
if(in_array($ext, $valid_images)){
array_push($images, $file);
}
}
}
echo json_encode($images);
Run Code Online (Sandbox Code Playgroud)