我想隐藏网站的图片路径。为此,我首先这样做了:
<?php
// get image path
$path = 'images/profiles/uploads/' . $list['thumbnail'];
$type = pathinfo($path, PATHINFO_EXTENSION);
$data = file_get_contents($path);
$base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);
?>
但这很慢,所以我尝试这样实现,但代码不起作用:
download.php
:
function setImgDownload($imagePath) {
$image = imagecreatefromjpeg($imagePath);
header('Content-Type: image/jpeg');
imagejpeg($image);
}
mypage.php
:
<?php include('download.php'); ?>
<img src="<?php setImgDownload('images/Chrysanthemum.jpg') ?>" width="300"/>
如果我将功能和通话功能放在同一页面上,那就可以了:
function setImgDownload($imagePath) {
$image = imagecreatefromjpeg($imagePath);
header('Content-Type: image/jpeg');
imagejpeg($image);
}
setImgDownload('images/Chrysanthemum.jpg');
如何将功能保存在单独的页面中?
答案 0 :(得分:6)
尝试将mypage.php更改为
<?php
include('download.php');
echo "<img src='".setImgDownload('images/Chrysanthemum.jpg')."' width='300'/>"; // calling function inside php
?>
在这里,改为在php之外创建HTML元素,使用echo将其放入php中,并在调用php函数时转义。这应该可以满足您的需求。