<?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;