猿问

如何根据文件名从公共目录中检查我的目标文件的扩展名?

我在公共目录中有一个员工文件夹。可以使用不同的扩展名上传图片。扩展名可以是小写字母或大写字母。


示例:用户可以上传如下所示的文件:


 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">

有人可以告诉我如何在不知道特定员工编号的上传文件扩展名的情况下显示目录中的图像名称吗?


拉丁的传说
浏览 142回答 2
2回答

慕侠2389804

您可以使用 pathinfo() 方法获取文件扩展名,如下所示,$filename = "12345";$files = glob("F:\FilePath\\$filename.*");if (count($files) > 0)foreach ($files as $file)&nbsp;{&nbsp; &nbsp; $info = pathinfo($file);&nbsp; &nbsp; echo $filename.".".$info["extension"];&nbsp;}

桃花长相依

尝试这个&nbsp;$directory = 'your folder path';&nbsp;$files = File::allFiles($directory);&nbsp;foreach ($files as $file) {&nbsp; &nbsp; $name= explode('/', $file);&nbsp; &nbsp; $full_file_name = end($name);&nbsp; &nbsp; $ext= explode('.', $full_file_name)[1];}
随时随地看视频慕课网APP
我要回答