Як в скрипт вставити картинку

Велика частина вмісту web-ресурсів сьогодні динамічно формується серверними скриптами. Але подібним чином виводиться переважно текстова інформація (розмітка сторінок, таблиці стилів, карта сайту). Зображення, музика, відео, архіви, як правило, розміщені на сервері у вигляді статичних файлів. Втім, іноді виникає необхідність формувати за допомогою сценарію і подібні дані. Так, якщо потрібно виводити статичну картинку, її цілком можна цілком вставити в скрипт.
Як в скрипт вставити картинку

Вам знадобиться

  • - можливість створення або редагування серверних сценаріїв.

Інструкція

1
Вставте дані картинки в скрипт у вигляді тексту, що є частиною програмного коду. Використовуйте найбільш зручні структури даних і синтаксичні конструкції. Вибір зазвичай визначається можливостями застосовуваного мови програмування. Так, у багатьох випадках зручно вставити картинку в скрипт у вигляді звичайної рядки символів, вміст якої є дані зображення, закодовані алгоритмом начебто Base64. У PHP це може виглядати наступним чином (картинка розміром 2x2 пікселя в форматі GIF): $ str = `R0lGODlhAgACAIAAAAAAAP /// yH5BAAA`. `AAAALAAAAAACAAIAAAIDDBAFADs =` - Також часто використовуються літерали масивів.
2


Підготуйте зображення до висновку. Якщо потрібно, здійсніть декодування вихідної інформації. Ви повинні отримати буфер, що містить бінарні дані картинки. Наприклад, на мові PHP декодування рядки, наведеної в першому кроці, може виглядати так: $ text = base64_decode ($ str) -
3
У заголовок HTTP-відповіді сервера додайте поле, що містить дані про довжину тіла відповіді (розмірі виведеної картинки). Обсяг визначте, використовуючи функції або методи, які повертають довжину масивів, рядків, і т.д. Наприклад: header ( `Content-length:` .strlen ($ text)) -
4
Додайте в заголовок HTTP-відповіді сервера поле, яке вказує на mime-тип переданого вмісту. Наприклад: header ( `Content-type: image / gif`) - Тип вмісту повинен бути вже відомий (визначений на основі формату вихідної картинки).



5
Якщо необхідно форсувати збереження картинки замість її відображення браузером, додайте відповідне поле в заголовок відповіді: header ("Content-Disposition: attachment- filename = my_image.jpg") -
6
Якщо потрібно уникнути кешування зображення браузером, введіть в HTTP-відповідь поля Pragma і cache-Control з відповідними значеннями: header ("Pragma: no-cache") -header ("Cache-Control: no-cache, must-revalidate, no-store") -header ("Cache-Control: pre-check = 0, post-check = 0", False) -Також варто віддавати дати останньої модифікації і закінчення терміну дії ресурсу. При цьому друга з них повинна бути більш пізньої: header ("Expires: Mon, 4 Jan 1 993 00:00:01 GMT") -header ("Last-Modified: ".gmdate ("D, d M Y H: i: s")." GMT") -
7
Сформуйте тіло HTTP-відповіді сервера, що представляє собою дані картинки. Використовуйте функції або методи об`єктів, що забезпечують виведення бінарних даних без їх додаткової обробки. Наприклад: printf ( "% s `, $ text) -


Увага, тільки СЬОГОДНІ!


Оцініть, будь ласка статтю
Всього голосів: 120
Увага, тільки СЬОГОДНІ!