在php中读取文件并将其设置为html中的img src


Read file in php and set it to the img src in html

我如何从图像文件夹(权限644)在php服务器上读取文件,并将其动态设置为html的img src ?我尝试了以下

<?php
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    $name = './images/approved.jpg';
    //$fp = readfile($name);
    $im = imagecreatefromjpeg($name);
    echo "<img src='data:image/jpg;base64,+ 'base64_encode($im), alt='Approved Videos''>";
    exit;
?>

我也试过下面的

<div id="videoThumbnails">
                        <p>Thumbnail</p>
                        <a href="#" class="thumbnail">
                                   <!-- <img src="/phpVA/thumbnails/a.mp4.jpg" alt="Denied Videos">-->
                                   <?php 
                                        $name="/phpVA/thumbnails/a.mp4.jpg";
                                        $im = file_get_contents($name);
                                        echo "<img src='data:image/jpg;base64,".base64_encode($im)."' alt='Approved Videos'>";
                                    ?>
                        </a>
                      </div>

输出

<img src="data:image/jpg;base64," alt="Approved Videos">

尝试file_get_contents

$im = file_get_contents($name);
echo "<img src='data:image/jpg;base64,".base64_encode($im)."' alt='Approved Videos'>";

我建议使用file_get_contents来获取文件内容,并用base64对这些内容进行编码。下面是我在我的一个项目中使用的一个很好的例子:

$path = './images/approved.jpg';
$type = pathinfo($path, PATHINFO_EXTENSION);
$data = file_get_contents($path);
$base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);