/**
* 判断字符串是否以什么结尾
* @param String $haystack 字符串
* @param String $needle 结尾
* @return Boolean
*/
function endWith($haystack, $needle) {
$length = strlen($needle);
if ($length == 0) {
return true;
}
return (substr($haystack, -$length) === $needle);
}
/**
* 判断目录下是否存在文件
* @param String $path 目录路径
* @param String $recursive 是否递归(false情况下只判断第一级目录,true递归目录下所有文件判断)
* @return Boolean
*/
function dirExistFile($path,$recursive = false) {
if (!is_dir($path)) {
return false;
}
// 目录相隔符号,linux是 /,window一般是\
if(!(endWith($path, '/') || endWith($path, '\\'))){
$path .= '/';
}
if($recursive){
// 递归遍历目录
$files = new \RecursiveIteratorIterator(
new \RecursiveDirectoryIterator($path),
\RecursiveIteratorIterator::LEAVES_ONLY
);
$isExistFile = false;
foreach ($files as $file) {
if ($file->isFile()) {
$isExistFile = true;
break;
}
}
return $isExistFile;
}else{
$files = scandir($path);
// 删除 "." 和 ".."
unset($files[0]);
unset($files[1]);
$isExistFile = false;
foreach ($files as $fileName) {
$fileNamePath = $path.$fileName;
if(is_file($fileNamePath)){
$isExistFile = true;
break;
}
}
return $isExistFile;
}
}
var_dump(dirExistFile('C:\test',true));
php判断某个目录下是否存在文件
Future_object2024-07-30 12:49
相关推荐
在坚持一下我可没意见5 分钟前
Spring 后端安全双剑(下篇):JWT 无状态认证 + 密码加盐加密实战deng-c-f19 分钟前
C/C++内置库函数(3):future、promise的用法2501_9216494919 分钟前
亚太股票数据API:日股、韩股、新加坡股票、印尼股票市场实时行情,实时数据API-pythonchaodaibing25 分钟前
【Java】一个批量更新插入数据到MySQL的工具类在坚持一下我可没意见28 分钟前
Spring 后端安全双剑(上篇):JWT 无状态认证 + 密码加盐加密实战_大学牲32 分钟前
全网爆火的豆包手机,到底是如何实现自动化的?一篇文章带你了解乾元41 分钟前
从命令行到自动诊断:构建 AI 驱动的故障树与交互式排障机器人引言lin62534221 小时前
Android仿小米视频播放器的缩放滚轮deng-c-f1 小时前
C/C++内置库函数(6):C++中类什么时候使用静态变量lin62534221 小时前
Android九宫格,1张图到9张图适配;图片自定义UI