php - 如何根据文件名检查我的目标文件从公共目录的扩展名?
问题描述
我在公共目录中有一个员工文件夹。可以在那里上传带有不同扩展名的图片。扩展名可以是小写字母或大写字母。
示例:用户可以上传文件,如下所示:
12345.JPG Or 12345.jpg Or 12345.PNG Or 12345.png
当我要根据员工编号显示/查看这个上传的图像文件时,首先我需要从公共目录中知道上传文件的正确扩展名。
我试图显示使用下面的一个仅用于一个扩展,但不是全部。
<img class="profile-user-img img-fluid img-circle"
src="{{ (file_exists(public_path('/hrm/employee/'.$employee->employee_no.'.JPG'))) ? asset('/hrm/employee/'.$employee->employee_no.'.JPG') : asset('/hrm/employee/'.$employee->employee_no.'.jpg') }}"
alt="User profile picture">
有人可以告诉我如何在不知道特定员工编号的上传文件扩展名的情况下显示目录中的图像名称吗?
解决方案
尝试这个
$directory = 'your folder path';
$files = File::allFiles($directory);
foreach ($files as $file) {
$name= explode('/', $file);
$full_file_name = end($name);
$ext= explode('.', $full_file_name)[1];
}
推荐阅读
- rust - 调用返回字符串字面量数组的函数,出现“无法返回引用局部变量的值”错误
- python - 收到导入 scipy.signal 的错误
- php - 如何使用 PHP/SQL 在 Azure SQL 表中选择包含“#”的行?
- mysql - 无法在 xampp 中启动 mysql
- reactjs - React.JS,TypeError:this.state.movies.map 不是函数问题
- firebase - 有什么方法可以实时从 Firebase Analytics 日志事件中获取数据?
- php - Laravel 只将第一项保存到数据库中,为什么?
- c - 使用 2D 数组与扁平化它以减少 C 中的运行时间
- amazon-s3 - 云端不下载 .mp3 文件
- jquery - jQuery - 一个取消选中所有复选框,但在切换时记住原始状态