Search code examples
phpimageincludecarouselglob

glob php - return all types of images from directory


I have a php function to grab images from a folder for a carousel and build the carousel on those images. I have a thumbnail folder and a main img folder.

My question is, how can I modify this code or what to add in order to recognise more image file types and not only jpg. I want to support png, gif and jpg.

My code is below:

<?php $thumbs = glob("img/thumb/*.jpg"); ?>
    <?php
    if(count($thumbs)) {
      natcasesort($thumbs);
      foreach($thumbs as $thumb) {
      ?>
          <li class="item">
              <a class="fancybox" rel="gallery1" href="img/large/<?php echo basename($thumb) ?>">
                  <img src="<?php echo $thumb ?>" width="100%" alt="" />
              </a>
          </li> 

    <?php
        }} else {
          echo "Sorry, no images to display!";
        }
    ?>

Solution

  • Change this line :

    glob("img/thumb/*.jpg")
    

    to

    glob("img/thumb/*.{jpg,png,gif}", GLOB_BRACE)
    

    It's important to have no spaces in the list of endings.