Итак, вот как мы планируем делать это на PHP, но мы не знаем, целесообразно ли это. Если нет, пожалуйста, объясните лучшую альтернативу.
Позвольте мне указать, что мы будем хранить разные разрешения одного и того же изображения для разных устройств, чтобы нам не приходилось рендерить их в разных разрешениях на лету, что постоянно загружает процессор.
Итак, вот как мы планируем хранить фотографии пользователей:
Допустим, мы храним изображение в разрешениях шириной 640 пикселей и 320 пикселей, пользователь - пользователь 1, и у них есть один рис. Мы будем хранить его в:
.../1/640/1.jpg
.../1/320/1.jpg
Первая фотография пользователя 2 будет сохранена в:
.../2/640/1.jpg
.../2/320/1.jpg
Таким образом, если бы нам потребовалось изображение размером 640 пикселей для пользователя 2, мы бы получили .../2/640/1.jpg
, а если нам нужно изображение размером 320 пикселей для пользователя 1, мы просто получили бы .../1/320/1.jpg
.
Затем мы просто сохраним дополнительные фотографии в цифровом виде, поэтому, если пользователь 1 загрузит новую фотографию, она будет сохранена в:
.../1/640/2.jpg
.../1/320/2.jpg
Их PIC ПО УМОЛЧАНИЮ, отображаемая в их профиле, ВСЕГДА будет 1.jpg
, поэтому, если они решат сделать 2-е изображение своим изображением по умолчанию, мы просто переименуем все 2.jpg в 1.jpg и все 1.jpg до 2.jpg. Имеет ли это смысл?
Таким образом, мы всегда можем легко вызвать их рисунок по умолчанию, просто извлекая 1.jpg из любого каталога разрешения, который нам нужен для отображения.
По мере добавления дополнительных изображений мы просто увеличиваем их имя по числовому значению (3.jpg, 4.jpg и т. Д.) И делаем соответствующие копии в подкаталогах каждого разрешения (... / 640 / и ... / 320). / например).
Порядок изображений будет просто их числовым порядком и будет отображаться как таковой, и если пользователь захочет изменить порядок изображений, мы просто переименуем файлы соответствующим образом в каталоге КАЖДОГО разрешения. Да, во время каждого изменения требуется много работы, но до следующего изменения больше не требуется.
Что нам нравится в этом методе, так это то, что нам вообще не нужно вызывать базу данных, поскольку все пользователи будут иметь одинаковую структуру в зависимости от их идентификатора пользователя.
Я надеюсь, что все имеет смысл!
Это хороший метод для хранения фотографий нескольких пользователей? Если нет, то почему?
Есть ли лучший метод? Если да, не могли бы вы, пожалуйста, описать это?
Спасибо!