我正在尝试scandir()来检查目录的内容并使用javascript发送路径参数并尝试加载#container div中的内容:
$("#container").load("fetch_images.php?path="+pathvariable);
fetch_images.php中的我正在尝试scandir($_GET['pathvariable'])
来扫描给定目录的元素。我的问题是如果没有使用$ _GET ['pathvariable']提供正确的路径,页面会显示一些警告和错误。
尝试扫描$files_dir_results = scandir($path);
并使用foreach()
显示数组的所有结果。
我不想在输出页面上显示任何类型的警告或错误。我知道我可以禁用PHP警告但我更喜欢更好的选择。
我不知道如何检查scandir()是否正在撤回任何错误或警告。感谢。
答案 0 :(得分:6)
我建议您首先检查目录是否与is_dir()
一起存在。然后,如果目录存在,请执行scandir()
答案 1 :(得分:5)
首先应检查路径是否对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);