Вывод всех изображений php

Отображаем все картинки из директории при помощи PHP

Случилось так, что подготавливая материалы для одного из будущих постов о забавной старой MS-DOS игре, мне понадобилось сделать скриншот около 500 маленьких иконок-спрайтов, собранных все вместе рядом и в заданном количестве колонок. Искать и устанавливать специальный софт чтобы генерировать коллажи картинок было не охота, задача очень проста и решилась в два десятка строк на PHP. Выводим все найденные картинки из директории в виде таблички и задаем фон — все просто, как в 1м классе.

Подготовка

Итак, список действий для данной задачки:

  • открыть директорию;
  • отсеять все файлы что не являются картинками по расширению png, jpg, gif;
  • вывести каждый рисунок в табличке с заданным количеством колонок и цветом фона.

Для тестирования и разработки на PHP подобных скриптов всегда удобно держать под рукой сборку с локальным веб-сервером Apache+PHP. В принципе подойдет любой локальный веб-сервер, я же использую OpenServer — он бесплатен, прост в установке и настройке.

Вот самое простое решение на PHP, написанное за несколько минут:

// show images in grid $columns = 15; $background = '#DBEAF9'; $images_dir = 'images/'; $count = 1; echo ''; if(is_dir($images_dir)) < if ($h = opendir($images_dir)) < while (($file = readdir($h)) !== false) < if(preg_match("#\.(jpg|gif|png)$#i", $file)) < echo ''; $count++; if( ($count%$columns)==0 ) echo ''; > > closedir($h); > > echo '
';

Все картинки из директории, что размещена там же где и файл-скрипт, будут выведены в виде таблици с количеством колонок равным 15. Цвет фона таблици — #DBEAF9 .

Читайте также:  Css width initial value

Результат

Вот что получается в результате генерации HTML кода скриптом:

Выводим картинки из директории при помощи PHP

Заключение

Вот такое простое решение простой задачи на PHP. При сборе и обработке информации, картинок и прочих ресурсов уже очень часто сталкиваюсь с подобными задачами, для которых не обязательно качать у устанавливать массу разного софта, достаточно вспомнить что под рукой есть простой и удобный инструмент — скриптовый язык программирования PHP.

Вообще любой язык программирования при умелом обращении, в целях автоматизации, может сэкономить массу времени при решении разных рутинных задач. Представьте только себе, к примеру, если бы эти 500 картинок взять и вручную по сращивать в Фотошопе — даже представить страшно сколько на это уйдет времени.

Источник

Вывод всех картинок из папки на PHP

Вывод всех картинок из папки на PHP

Если Вы делали сайт-визитку, то перед Вами могла встать задача по выводу какого-нибудь портфолио, каких-то работ, другими словами, изображений. Предположим, Admin-панели у сайта нет, а вот новые работы заказчик должен добавлять максимально легко, не залезая в исходный код. Вот в таких случаях Вам очень поможет данная статья, в которой мы реализуем вывод всех картинок из папки на PHP.

Привожу сразу весь PHP-код:

$dir = ‘images/’; // Папка с изображениями
$cols = 3; // Количество столбцов в будущей таблице с картинками
$files = scandir($dir); // Берём всё содержимое директории
echo «

«; // Начинаем таблицу
$k = 0; // Вспомогательный счётчик для перехода на новые строки
for ($i = 0; $i < count($files); $i++) < // Перебираем все файлы
if (($files[$i] != «.») && ($files[$i] != «..»)) < // Текущий каталог и родительский пропускаем
if ($k % $cols == 0) echo « «; // Добавляем новую строку
echo «

«; // Закрываем столбец
/* Закрываем строку, если необходимое количество было выведено, либо данная итерация последняя */
if ((($k + 1) % $cols == 0) || (($i + 1) == count($files))) echo «

«;
$k++; // Увеличиваем вспомогательный счётчик
>
>
echo «

«; // Начинаем столбец
$path = $dir.$files[$i]; // Получаем путь к картинке
echo «»; // Делаем ссылку на картинку
echo «Вывод всех изображений php«; // Вывод превью картинки
echo «»; // Закрываем ссылку
echo «

«; // Закрываем таблицу
?>

Разумеется, здесь идёт смесь представления и реализации, что, конечно, нехорошо, но данный скрипт Вы должны будете подстроить под свой движок. Возможно, у Вас и таблиц не будет. В остальном, думаю, проблем с понимаем, как вывести на сайт изображения из папки на PHP, возникнуть не должно.

Теперь для того, чтобы добавить очередное изображение на сайт, достаточно просто скопировать необходимую картинку в папку «images«. Вот таким простым способом реализуется задача, которая, на первый взгляд, неразрешима без вмешательства в исходный код, базу данных, либо создания Admin-панели.

Создано 19.10.2012 08:43:41

  • Михаил Русаков
  • Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

    Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
    Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

    Если Вы не хотите пропустить новые материалы на сайте,
    то Вы можете подписаться на обновления: Подписаться на обновления

    Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

    Порекомендуйте эту статью друзьям:

    Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

    1. Кнопка:
      Она выглядит вот так:
    2. Текстовая ссылка:
      Она выглядит вот так: Как создать свой сайт
    3. BB-код ссылки для форумов (например, можете поставить её в подписи):

    Источник

    Вывод всех изображений из папки

    Здравствуйте, ни как не могу вывести все изображения из заданной папки..((
    Скрипт сканирует папку на наличие файлов, и должен их выводить.
    но он этого не делает.
    если же использовать скрипт без функции — то изображения выводятся, если использовать только функцию и указывать название файла, то он тоже отображается. а вот если соединить все вместе, то ничего не получается. (((( в чем может быть проблема??

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
     header('Content-type: image/jpeg'); function imageresize($outfile,$infile,$percents,$quality) { $im=imagecreatefromjpeg($infile); $w=imagesx($im)*$percents/200; $h=imagesy($im)*$percents/200; $im1=imagecreatetruecolor($w,$h); imagecopyresampled($im1,$im,0,0,0,0,$w,$h,imagesx($im),imagesy($im)); imagejpeg($im1,$outfile,$quality); imagedestroy($im); imagedestroy($im1); } $path=GetCWD()."/uploads"; $dir = opendir($path); if((readdir($dir))!== false)  closedir($dir); } ?>

    Источник

    Вывод всех изображений php

    www.meweb.ru

    Гостей: 8

    Гости:
    www.meweb.ru[Ваш IP] 07:34:18
    /Статьи
    www.meweb.ru185.191.171.24 07:33:22
    Поиск по тегам
    www.meweb.ru185.191.171.33 07:32:49
    Поиск по тегам
    www.meweb.ru114.119.139.185 07:32:35
    Поиск по тегам
    www.meweb.ru85.208.96.194 07:31:54
    Поиск по тегам
    www.meweb.ru185.191.171.16 07:30:32
    Поиск по тегам
    www.meweb.ru185.191.171.11 07:30:20
    Поиск по тегам
    www.meweb.ru185.191.171.9 07:30:16
    Поиск по тегам

    Всего пользователей: 55
    Новый пользователь: antalyaliali

    www.meweb.ruJS- утилиты, фреймворки → Syntax Highlighter [1269]
    www.meweb.ruPHP скрипты → Скрипт для проверки . [1053]
    www.meweb.ruJS- утилиты, фреймворки → JQuery TimeAgo [968]
    www.meweb.ruJS- утилиты, фреймворки → JQuery Form [923]
    www.meweb.ruJS- утилиты, фреймворки → JQuery Validation Pl. [4035]

    www.meweb.ruБезопасность → DKIM-подпись для почтового домена в I. [18347]
    www.meweb.ruСобственное мнение → Page Rank и тИЦ ушли в небытие. [4534]
    www.meweb.ruСобственное мнение → isset и empty — функции? Нет! [8096]
    www.meweb.ruПрограммирование → PHP-Fusion: переход с mysql на mysqli. [8831]
    www.meweb.ruПрограммирование → Перевод CMS PHP-Fusion с mysql_* на m. [6603]

    www.meweb.ru.htaccess → Блокируем доступ к скрытым дирек.
    www.meweb.ruHTML → Шаблон страницы HTML 4.01 Strict
    www.meweb.ruJavaScript, JQuery → Частичное обновление страницы
    www.meweb.ruCSS → Как сделать, чтобы кнопки при на.
    www.meweb.ru.htaccess → Разрешаем любым файлам обрабатыв.

    Да, смайлы зачетные )) Уже не помню, где брал их. Это далеко не все, лень добавлять просто, их там штук 70

    Купить продукцию Амвей в Ярославле

    → На картеКупить AMWAY в Ярославле Приобрести высококачественную продукцию Амвей в Ярославле, получить консультации по бизнесу, заказать продукцию или получить заказ:
    Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
    Телефон:+7 (920) 112-00-91
    Email:matyxho@mail.ru
    Сайт:https://www.amway.ru/user/lebedem
    Визитка:http://yar.meweb.ru

    При создании одного из плагинов понадобилось мне показать все изображения из указанной папки (директории). Признаться, раньше я не работал с подобным, но все новое всегда вызывает азарт. Поэтому, чуть погуглив и покурив мануалы, я набросал несколько строк кода, коими и поделюсь с вами.

    Опубликовал PisatelPisatel Добавлено 06-04-2015 15:3606 Апрель 2015 15:36:11 28429 Прочтений28429 Прочтений

    Обновлено: 06-04-2015 16:00Обновлено: 06 апреля 2015 16:00:17 printer

    В данной статье приведу небольшой скрипт, который ищет изображения в указанной папке (директории) и выводит их. Для начала — вывод всех изображений из папки (как всегда- комментарии прямо в коде):



    $wimage = "";

    $fimg = "";

    $path = "images/"; // задаем путь до сканируемой папки с изображениями

    $images = scandir($path); // сканируем папку

    if ($images !== false) < // если нет ошибок при сканировании

    $images = preg_grep("/\.(?:png|gif|jpe?g)$/i", $images); // через регулярку создаем массив только изображений

    if (is_array($images)) < // если изображения найдены

    foreach($images as $image) < // делаем проход по массиву

    $fimg .= "".$image."";

    >

    $wimage .= $fimg;

    > else < // иначе, если нет изображений

    $wimage .= "
    Не обнаружено изображений в директории!
    \n";

    >

    > else < // иначе, если директория пуста или произошла ошибка

    $wimage .= "
    Директория пуста или произошла ошибка при сканировании.
    ";

    >

    echo $wimage; // выводим полученный результат


    Однако, задачи бывают разные. Попробую привести несколько примеров. Например, нам необходимо вывести не все изображения, а только первые 10. Для этого нужно будет лишь задать дополнительное условие при проходе по массиву. Итак, код с комментариями:

    $stop = 9; // на 1 меньше, так как ключи в массиве начинаются с 0, то есть

    // 0, 1, 2. значит первые 10 значений закончатся на ключе 9

    foreach($images as $key => $image) < // делаем проход по массиву, выбирая ключ =>значение

    $fimg .= "".$image."";

    if ($stop == $key) break; // останавливаем проход по массиву, когда 9==9

    >


    Следующий пример — выберем, например, каждое второе изображение:

    foreach($images as $key => $image) < // делаем проход по массиву, выбирая ключ =>значение

    if ($key % 2 == 0) < // если целочисленный остаток от деления ключа на 2 равен 0

    $fimg .= "".$image."";

    > else < // иначе

    continue; // пропускаем изображение

    >

    >


    Ну и на закуску — выберем 5 случайных (рандомных) изображений из папки (каталога). Для этого я воспользуюсь php–функцией array_rand(); , и код придется чуть усложнить, увеличив буквально на пару строк:

    $arand = array_rand($images, 5); // получили массив 5 случайных ключей (ключ массива => ключ изображения)

    $i = 0;

    foreach($images as $key => $image) < // проход по массиву

    if ($arand[$i] == $key)
    // если значение случайного ключа равно текущему ключу- выводим изображение

    $fimg .= "".$image."";

    > else < // иначе

    continue; // пропускаем

    >

    $i++;

    >


    Если кто–то сможет сделать это более изящно — милости прошу. Я лично всегда стараюсь использовать для работы с массивами функции, которые специально предназначены для работы с ними и не изобретать велосипедов.

    На этом, в общем, и закончу. Удачи в кодинге и процветания твоему проекту!

    Источник

    Все изображения из папки PHP

    Печать PDF

    Вот выдалось немного свободного времени и решил отписаться о том какие сегодня стояли задачи передо мной. А стояла передо мной задача вывести весь список mini изображений из определенной папки. Для чего это понадобилось? Есть некая система где в панели администратора можно добавлять товар заполнив некоторые поля, но вот незадача, возможно нужная картинка товара уже была загружена ранее и чтоб не грузить ее еще раз была написано функция которая отображала все картинки с возможностью выбора из уже загруженных.

    Саму систему выборки и добавления я разумеется рассматривать не буду а покажу пример как просто такое можно реализовать с помощью php функции glob(); Перейдем сразу к написанию функции назовем ее search_img().

    Вывод всех изображений php

    function search_img($path) //$path — папка из которой выводи;
    // обходим папку циклом
    $html=»; // переменная которую заполним изображениями
    foreach (glob($path.»*.jpg») as $filename) // jpg — файлы с каким расширением нам нужны;
    $html .= »;
    >
    return $html; // отдаем переменую
    >

    Пример использования:

    echo search_img(«img/»); // выводим

    Вот собственно и все, функцию можете дорабатывать под ваши нужны и использовать.

    Источник

    Оцените статью