app*_*tix 4 php variables store echo
假设我让用户输入图像的 URL。
在 URL 验证等之后,我想获取图像并将其存储在 PHP 变量中。不是图像路径,而是实际图像本身。
我在其他字符串之间添加了这个图像保持变量,所以header()
在回显图像之前我不能改变使用。是否可以使用<img>
HTML 标签?我真的不想将图像复制到我自己的服务器...
我如何能:
我在上面说过我将此图像放入另一个变量中,例如:
$str = "blah blah" . $var_holding_img . "more text";
Run Code Online (Sandbox Code Playgroud)
是否可以在上面的字符串中插入一些将被图像替换的内容?可以$str
稍后解析变量以用图像替换一些随机文本,如“abg30j-as”...
我找到了我自己问题的答案:
首先,我创建了另一个 PHP 文件,名为img.php
:
<?php
$url = $_GET['imgurl'];
/*
Conduct image verification, etc.
*/
$img_ext = get_ext($url); //Create function "get_ext()" that gets file extension
header('Content-type: image/' . $img_ext);
echo file_get_contents($url);
?>
Run Code Online (Sandbox Code Playgroud)
然后,在原来的 PHP 文件中,我使用了这个 PHP 代码:
<?php
$var_holding_img = '<img src="img.php?imgurl=http://example.com/image.png"/>';
$string = "This is an image:<br \>" . $var_holding_img . "<br \>displayed dynamically with PHP.";
echo $string;
?>
Run Code Online (Sandbox Code Playgroud)
这样,PHP 文件“img.php”可以使用正确的标题,图像可以作为 HTML 插入到任何其他 PHP 变量中。