Петля Foreach для фоторамы

Я пытаюсь использовать цикл foreach с плагином fotorama.

То, что я пытаюсь сделать, это загрузить половинное изображение для основного изображения галереи. Который у меня работает в foreach, но я хочу использовать полное изображение для тега full-data, но я не могу заставить его работать.

Это рабочий код.

<div class="fotorama"data-allowfullscreen="native"data-nav="thumbs"data-fit="scaledown"data-width="100%"data-height="100%"data-arrows="true"data-click="true"data-swipe="true">
<?php
$dirname = "admin/image-upload/uploads/";
$images = glob($dirname."*.*");
foreach($images as $image) {
echo '<img src="'.$image.'" /><br />';
}
?>
</div>

это то, что я пытаюсь сделать.

<div class="fotorama"data-allowfullscreen="native"data-nav="thumbs"data-fit="scaledown"data-width="100%"data-height="100%"data-arrows="true"data-click="true"data-swipe="true">
<?php
$dirname = "admin/image-upload/uploads/";
$images = glob($dirname."*.*");
$dirname2 = "admin/image-upload/full/";
$images2 = glob($dirname2."*.*");
$fullImgs = "<img data-full=".$image2." src=".$image." /><br />";
foreach($fullImgs as $fullImg) {
echo $fullImg;
}
?>


</div>

спасибо в продвинутых парнях

0

Решение

Попробуй это:

$dirname = "admin/image-upload/uploads/";
$images = glob($dirname."*.*");
$dirname2 = "admin/image-upload/full/";
$images2 = glob($dirname2."*.*");
$array = array_merge($images, $images2);

// Supossing both array have same length
$length = count($images);
for($i = 0; $j = $length; $i < $length; $i++, $j++) {
echo '<img data-full=".$images2[$j]." src=".$images[$i]." /><br />';
}
0

Другие решения

Я думаю, что вы хотите это:

<?php
$dirname = "admin/image-upload/uploads/";
$images = glob($dirname."*.*");
$dirname2 = "admin/image-upload/full/";
$images2 = glob($dirname2."*.*");
//assuming $images and $images2 are the same length...
foreach ($images as $k => $v) {
echo "<img data-full=".$images2[$k]." src=".$v." /><br />";
}
?>

Не проверял, но должен дать идею …

0

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

Image_7263.png
Image_0172.png

И так далее. Для больших изображений вы просто добавляете _BIG в конец названия.

Затем вы используете цикл foreach, чтобы просмотреть каталог для небольших изображений. Для каждого изображения вы добавляете _BIG в конец имени файла и включаете его из каталога для больших.

$smallImages = glob ("/path/to/small/images/*.*");

foreach ($smallImages as $img)
{
$name = substr ($img, 0, strlen ($img)-4); //Remove the .png or .jpg
$bigImg = "/path/to/big/images/".name."_BIG.jpg"; // or whatever image type you are using
echo "<img data-full=\"".$bigImg."\" src=\"".$img."\" />
}
0
По вопросам рекламы [email protected]