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

Foreach具有不同代码块的txt和图像文件

Foreach具有不同代码块的txt和图像文件

红颜莎娜 2023-10-30 20:49:26
我有一个画廊。我想将文件放入。它适用于 jpg、png 等。目录:1.jpg2.png3.jpg...代码 :foreach ($gallery as $u)   { echo'<div class="section active" id="">'; foreach (glob("$meno/$new/*.{png,jpg,jpeg,gif,txt}", GLOB_BRACE) as $filename) {    echo '<div class="slide"><img class="" src="https://onlinegallery.online/'.$filename.'" /></div>';  //slide}echo('</div>');}我想将 txt 文件放入目录并为 txt 和图像文件创建 foreach (某些幻灯片应该是 txt 文件)。我不知道该怎么做,因为 txt 文件不能在 img src 标记中使用。它应该看起来像这样。目录:1.png2.img3.txt4.jpg$images = '<img class="" src="https://onlinegallery.online/'.$filename.'" />';$txt = '<div><p>fopen("'.$filename.'", "r");             echo fread($txt,filesize("'.$filename.'"));             fclose($txt); </p></div>';foreach ($gallery as $u)   { echo'<div class="section active" id="">'; foreach (glob("$meno/$new/*.{png,jpg,jpeg,gif,txt}", GLOB_BRACE) as $filename) {    echo '<div class="slide"> //$images or $txt files//i need txt and images files here</div>';  //slide}echo('</div>');}我想我已经完全出局了,但无论如何还是谢谢你的建议。
查看完整描述

2 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

您需要读取文本文件的内容并输出它们。请小心清理文本内容 - 您不想意外发出被视为 html 的内容,尤其是当内容来自未知来源时。

您还需要if在 for 循环内部添加一个循环来确定是输出图像还是文本。对于图像,您可以继续使用现有代码。

对于文本,类似这样的方法可能有效:

echo htmlentities(file_get_contents($filepath));


查看完整回答
反对 回复 2023-10-30
?
胡子哥哥

TA贡献1825条经验 获得超6个赞

foreach (glob("$meno/$new/*.{png,jpg,jpeg,gif,txt}", GLOB_BRACE) as $filename) {


        $imgFileType = pathinfo($filename,PATHINFO_EXTENSION);


        $title = basename("$meno/$new/$filename", ".jpg").PHP_EOL;


        if(($imgFileType == 'jpg') || ($imgFileType == 'png') || ($imgFileType == 'jpeg') || ($imgFileType == 'gif')) {

    echo '<div class="slide"><img class="" onclick="fullscreen()" src="https://onlinegallery.online/'.$filename.'" alt="'.$title.'"/><p class="imagetitle">'.$title.'</p></div>'; 

}


        if(($imgFileType == 'txt')) {


    echo '<div class="slide"><p class="txtslide" onclick="fullscreen()">';

    echo filter_var(file_get_contents($filename), FILTER_SANITIZE_STRING);

    echo '</p><p class="imagetitle">'.$title.'</p></div>';     

}



}



echo('</div>');


查看完整回答
反对 回复 2023-10-30
  • 2 回答
  • 0 关注
  • 80 浏览

添加回答

举报

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