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

Велика частина вмісту 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.gif") -
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 1993 00:00:01 GMT") - header ("Last-Modified:" .gmdate ("D, d MYH: i: s" ). "GMT") -
7
Сформуйте тіло HTTP-відповіді сервера, що представляє собою дані картинки. Використовуйте функції або методи об'єктів, що забезпечують виведення бінарних даних без їх додаткової обробки. Наприклад: printf ("% s ', $ text) -

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