У меня есть ведро S3 с изображениями, имена которых следуют по простому шаблону. Первые 6-значные групповые изображения по листинговому номеру, отстающие цифры не являются последовательными, но следуют над надежным шаблоном (от 0 до 99). Я фиксирую шесть цифр, которые запускают имя файла в переменной $ln
.Получить изображение из корзины S3, соответствующей шаблону (PHP)
/*
https://s3.amazonaws.com/stroupenwmls2/602665_10.jpg
https://s3.amazonaws.com/stroupenwmls2/602665_12.jpg
https://s3.amazonaws.com/stroupenwmls2/602665_13.jpg
https://s3.amazonaws.com/stroupenwmls2/602665_15.jpg
*/
То, что я хочу сделать, это заполнить «список» IMG SRC атрибут с URL к изображению, если он существует для этого списка (если нет, то я не предоставить не-image.jpg). И я перебираю множество разных списков, чтобы создать свою веб-страницу.
Я борюсь с логикой, чтобы захватить первое изображение, которое соответствует переменной $ listing. Вот то, что я пытался, не повезло (только производит 0):
$bucket = 'https://s3.amazonaws.com/stroupenwmls2/';
$ln = '602665';
$string = $bucket . $ln . '_';
// match the pattern '_xx.jpg', with 1 or 2 numbers
$image = preg_match('/^_[0-9]{1,2}\.(jpg|jpeg|png|gif)/i', $string);
Тогда в моем веб-приложение:
<img src="<?php echo $image ?>">
Я идиот, когда речь заходит об использовании preg_match, то, что мне действительно нужно, это какой-то параметр подстановки. Я уверен, что делаю это слишком сложно.
Да, я включил образец этих изображений в начале моего вопроса. В ведро S3 есть тысячи изображений, если один (или более) существует, который соответствует первым 6 номерам, я хочу захватить его, чтобы показать его в своем веб-приложении. –