我想对网站隐藏图像路径。为此,我首先这样做:

<?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'); 

如何将函数保留在单独的页面中?

请您参考如下方法:

尝试将 mypage.php 更改为

<?php 
   include('download.php'); 
   echo "<img src='".setImgDownload('images/Chrysanthemum.jpg')."' width='300'/>"; // calling function inside php 
?> 

在这里,不是在 php 外部创建 HTML 元素,而是使用 echo 将其放入 php 内部,然后在调用 php 函数时转义。这应该可以满足您的需求。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!