Вопрос такой, есть ссылка на изображение (вообще они рисуется при помощи РНР), я его получаю через file_get_contents: Код (PHP): $data = file_get_contents( 'http://php.ru/images/qr-code2.gif' ); картинка на удаленном серверев $data у меня оказывается много букв, цифр и прочих символов, потом если сделать так: Код (PHP): <img src="data: image/png;base64,<?php echo $data; ?>" /> единственно я получал gif, а тут png, но не в этом дело то картинка будет отображаться, а вот такой вопрос, мне надо для этой картинки сделать обертку, что бы ссылка была не на data: image/png;base64,... а на файл, а в нем уже будет как то происходить вывод этотй картинки, только как это сделать. т.е. мне надо что то типа: Код (PHP): <img src="img.php" /> а в img.php что то вроде Код (PHP): echo $data; только как это правильно сделать?
генерирую извините затупил, а точнее что то из разряда "жадный платит дважды", я пытался открыть картинку через интерпретатор (или эмулятор или хрен знает что) встроенный в phpDesigner 8, оно и выдавало кадабру, вот уже 2 часа сижу копаюсь в библиотеке GD, а на Open Server все пашет. Добавлено спустя 11 минут 49 секунд: Еще такой вопрос возник, а могу я сразу средствами РНР проверить, битое изображение ($data) или нет?
Если imagecreatefromstring() проглотит, значит формат не нарушен. Большинство битых изображений не пройдет.
и не битых тоже. дело в том какие библиотеки использует пых для работы с изображениями. gd и im плотно юзают cimg - если ей что-то не понравилось то изображение признается битым. а браузер кажет. а редактор вроде гимпа кажет. а дряблый виндовый просмотрщик кажет. значит не битый? так что прямой и честный ответ на вопрос может ли пых распознать битое изображение - нет, не может. без вызова внешних графических утилит. а это уже не пых.
Когда существует множество библиотек, компромисс неизбежен, но я все же не согласен что большинство не битых не пройдут, скорее это будут исключения. Поскольку большинство решений по созданию превьюшек во всём интернете основаны на GD2 и они работают.
это фобия, как я уже писал выше, делал как то на WP, там рисунок генерировался и отдавался в виде src="data: image/png;base64,........." (через ob_start генерация происходила) так вот на WP мне все время картинка не отображалась, писала что битая, при этом весь тот же самый код без WP пахал. после этого хотелось бы как то убеждаться что не битое.