为了账号安全,请及时绑定邮箱和手机立即绑定

如何显示某些文件扩展名类型的特定图像?

如何显示某些文件扩展名类型的特定图像?

PHP
慕容森 2021-04-30 10:15:52
我正在尝试实现一个php,mySQL Admin面板/仪表板,该面板显示了已上传文件的小预览图像,如果该文件不是jpg,jpeg,png或gif,那么我想显示一个占位符图像。因此,例如,如果上载的文件实际上是jpg,则表中的预览列将显示与db中存储的文件名关联的图像(这是我的工作),但如果是pdf,则应显示库存/填充物/我选择的预定义图片。我希望在php中进行此操作,但是在该领域的知识非常有限,该项目是我的第一个大型php项目。我尝试使用js / jquery开关实现此功能,但没有运气,以下是最后一次尝试的代码: $(document).ready(function() { var fileName, fileExtension; fileName = event.target.innerHTML; fileExtension = fileName.replace(/^.*\./, ''); switch (fileExtension) {  case 'png': case 'jpeg': case 'jpg':      $('#tableImg').attr("src","<?php echo $row["fileName"]; ?>");      break;  case 'zip':      $('#tableImg').attr("src","images/pdf.png");      break;  case 'pdf':      $('#tableImg').attr("src","images/pdf.png");      break;    }});我不再使用此方法,这只是我最后一次尝试使其工作。预览列当前在php文件中被调用,如下所示:<img id="tableImg"  class="admin-thumb" src="<?php echo $row["fileName"]; ?>" alt="">我知道我目前的方法仅允许显示具有jpg,png和其他与图像相关的扩展名的文件,但我不知道如何换出 echo $row["filename"]我想我要的是,如果我错了,请纠正我,这是一个if,if,else或php开关。我只是不知道如何使它以前面提到的方式工作。回顾一下:我需要帮助使表格的预览列显示与文件名/ URL关联的图像,或者如果文件类型是zip,pdf或非图像文件,则它会显示我选择的占位符图像。我确实有要分享的屏幕截图,但还没有10位代表可以分享。
查看完整描述

1 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

SplFileInfo应该提供扩展,然后仅使用switch语句设置要显示的图像。


$myfile=$row["fileName"];

$info = new SplFileInfo($myfile);

$ext = $info->getExtension();


switch ($ext) {

 case 'zip':

    $image='zip.png';

    break;

 case 'pdf':

    $image='pdf.png';

    break;

 default:

    $image=$myFile;

}



<img id="tableImg"  class="admin-thumb" src="<?= $image ?>" alt="">


查看完整回答
反对 回复 2021-05-14
  • 1 回答
  • 0 关注
  • 124 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信