2013-02-10 2 views
1

Я вижу, как WAMP это делает, и я хочу реализовать эту технику на своем веб-сайте, чтобы получить шифрование изображения из базы данных, в основном то, что я делаю до сих пор; но всякий раз, когда я повторяю декодирование base64 с помощью «EOFILE» в переменной, изображение приводит к ошибкам.EOFILE необходимо при декодировании изображений с base64?

НО, всякий раз, когда у меня есть только декодирование echo base64 без добавления EOFILE в переменную, изображение отображается.

Мой вопрос: есть ли способ добавить переменную в < < < EOFILE. $ x. EOFILE;

ИЛИ все в порядке, чтобы не включать EOFILE в код PHP.

Вот некоторые ссылки:

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 по какой-то причине не работает, но действительно ли это необходимо? Раньше я никогда не использовал EOFILE в PHP, и google действительно не помог мне, но насколько это важно? Должен ли я беспокоиться об этом, если у меня его нет в моем коде?

Кроме того, что такое '< < <' используется для PHP?

Спасибо :)

ответ

3

EOFILE произвольный идентификатор в Heredoc синтаксиса, который используется для определения строковых литералов.

Вы можете выбрать любой идентификатор, например:

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

Однако, если у вас уже есть переменная, содержащая base64 кодированные данные (например, из базы данных), вы можете просто сделать это:

echo base64_decode($str); 
+0

Так что не нужно иметь EOM или EOFILE при выводе шифрования base64? Или один из примеров в ссылке, которую вы предоставили, содержит функции и переменные, включенные в строку, может быть, это может быть связано с тем, что может дать что-то взамен? (нет точек для разделения переменных в строке?) –

+1

Синтаксис Heredoc (то, что вы называете EOFILE) - это просто способ вложения некоторого текста в исходный код PHP, так же, как '' цитируемые строки ". Если вы хотите сохранить данные в отдельном файле, это нормально, и вам не нужно использовать heredoc. – duskwuff

+0

А ладно, спасибо всем :) –

Смежные вопросы