Генерируете изображение, а затем отправляете его без предварительного сохранения в виде файла? - PullRequest
2 голосов
/ 13 сентября 2011

Если я генерирую изображение непосредственно в php-скрипте для отправки обратно в JS, обязательно ли иметь этот промежуточный шаг для сохранения изображения в файловой системе?

Я создаю изображение с помощью imagecreate (), затем imagecopyresized (), затем хочу отправить результат в виде base64, обернутого в json (Позже мне понадобится массив строк, а не одна).

Я не смог найти ничего, что base64_encode () могло бы принять, кроме байтов из fread (). Я считаю, что сохранять в файловую систему бесполезно и думаю, что должен быть лучший способ!

Спасибо

Ответы [ 2 ]

4 голосов
/ 13 сентября 2011

Вам не нужно сохранять файл вообще.Просто используйте выходную буферизацию :

ob_start();
imagepng($im);
$pngData = ob_get_contents();
ob_end_clean();
echo base64_encode($pngData);
0 голосов
/ 20 февраля 2013

Просто хочу добавить;Есть функция ob_get_clean(), которая выполняет ob_get_contents() и ob_end_clean()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...