Количество файлов в папке в php

<?php $directory = '/var/www/ajaxform/'; if (glob($directory . '.jpg') != false) { $filecount = count(glob($directory . '*.jpg')); echo $filecount; } else { echo 0; } ?> 

в этом каталоге есть четыре jpg-изображения, но оно возвращает 0

Glob возвращает array , по ошибке возвращает false .

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

 $directory = '/var/www/ajaxform/'; $files = glob($directory . '*.jpg'); if ( $files !== false ) { $filecount = count( $files ); echo $filecount; } else { echo 0; } 

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

 <?php $directory = '/var/www/ajaxform/'; if (glob($directory . '*.jpg') != false) { $filecount = count(glob($directory . '*.jpg')); echo $filecount; } else { echo 0; } ?> 

Ошибка в вашем шаблоне glob (в if). Вам не хватает *:

 glob($directory . '*.jpg') 

должно сработать

Минималистский подход:

 function getImagesNo($path) { return ($files=glob($path.'*.jpg')) ? count($files) : 0; } 

glob чувствителен к регистру, в соответствии с документами PHP. Являются ли ваши расширения строчными? Имеет ли исполняющая учетная запись доступ к / var / www / ajaxform /?

Просто попробуйте это –

 if (glob($directory . "*.jpg") != false) $filecount = count(glob($directory . "*.jpg")); else $filecount = 0;