Почему моя функция определения размера файла не работает?

Всем привет !

Недавно написал код на php и думал что "сделал дело - шагай смело" для меня. В общем есть
функция которая проверяет размер файла, если размер файла >= 1 Мб то возвращает истину.
Но проблема в том что все файлы которые создавались имели размеры 1.6Мб , 0.9Мб итп. Файл создается
если предыдущий файл log_N.txt имеет размер больший чем 1мб , при этом новый файл будет называться log_(N+1).txt.

/**
	* check file`s size to be less than 1MB
	*/
	private function isNormalFileSize( $arg ){
		if( !$this->isFileExists($arg) ) return false;
		$size = filesize( $arg ) / 1E6;
		if( $size <= 1 ) return true;
		return false;
	}
  • Вопрос задан
  • 2300 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
private function isNormalFileSize($filename) {
    clearstatcache(TRUE, $filename); // сброс кэша
    return (file_exists($filename) && (filesize($filename) < 1048576));
}

Функции file_exists и filesize кэшируют результат для большей производительности.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы