1

我看到了 WAMP 是如何做到这一点的,我想在我的网站上实现这种技术以从数据库中获取图像加密,这基本上就是我目前所做的;但是每当我用变量中的'EOFILE'回显base64解码时,图像都会导致错误。

但是,每当我只有 base64 解码回显而没有在变量中添加 'EOFILE' 时,图像就会显示。

我的问题是,有没有办法在 <<< EOFILE 中添加一个变量。$x 。文件;

或者在 PHP 代码中不包含 'EOFILE' 是完全可以的。

以下是一些参考资料:

WAMP,在将加密分配给变量时使用“EOFILE”:

$pngPlugin = <<< EOFILE
//base64 encryption of the image
EOFILE;

我正在尝试,没有EOFILE:

//note that the file when uploaded will get base64_encode() to the DB
$test = file_get_contents('./image.png');
$test2 = base64_encode($test);
//then implemented this way on the page via the DB
header("Content-type: image/png");
echo base64_decode($test2);

由于某种原因,将变量添加到 <<< EOFILE 并不能真正起作用,但它真的需要吗?我以前从未在 PHP 中使用过 EOFILE,而且 google 并没有真正为我做任何好事,但它有多重要呢?如果我的代码中没有包含它,我需要担心它吗?

另外,PHP 中使用的 '<<<' 是什么?

谢谢 :)

4

1 回答 1

3

这是HeredocEOFILE语法中的任意标识符,用于定义字符串文字。

您可以选择任何标识符,例如:

$i = <<< EOM
The message goes here.
EOM;

但是,如果您已经有一个包含 base64 编码数据的变量(例如来自数据库),您可以简单地执行以下操作:

echo base64_decode($str);
于 2013-02-10T03:44:38.243 回答