PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
  • OpenCart
Календарь
Август (2022)
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031    
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • Hello
    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
  • TOP-5

    • Метод POST (2944678 )
    • Привет, МИР! (910168 )
    • Метод GET (666368 )
    • Операторы (605182 )
    • Firefox уже запущен, но не отвечает... (352239 )

Как определить размер файла?

Главная» Array » Как определить размер файла?
PHP урок № 161
Определяем размер файла
Для чего это может пригодиться?
Первое, что приходит в голову, это вывод ссылки на монитор для скачивания файла с описанием свойств этого файла.
Последняя строчка, заметели?! Вот чтоб руками это не писать, программа сама будет выводить размер подгружаемого файла. Для этого напишем свою функцию.
В PHP имеется встроенная функция (filesize), которая определяет размер файла в байтах. Мы рассмотрим функцию которая будет высчитывать количество байт и по мере надобности переводить их килобайты, мегабайты или гигабайты.
Листинг № Array - Функция - определяет размер файла
<?php

//В качестве аргумент $file, функция принимает путь к файлу

function filesize_get($file)
{
    
// проверяем существует ли файл
    
if(!file_exists($file)) return "Файл  отсутствует.";

   
//определяем размер файла
  
$filesize = filesize($file);
   
   
// Если размер переданного в функцию файла больше 1кб
   
if($filesize > 1024)
   {
       
$filesize = ($filesize/1024);
       
// если размер файла больше одного килобайта
       // пересчитываем в мегабайтах
       
if($filesize > 1024)
       {
            
$filesize = ($filesize/1024);
           
// если размер файла больше одного мегабайта
           // пересчитываем в гигабайтах
           
if($filesize > 1024)
           {
               
$filesize = ($filesize/1024);
               
$filesize = round($filesize, 1);
               return 
$filesize." ГБ";   
                
           }
           else
           {
               
$filesize = round($filesize, 1);
               return 
$filesize." MБ";   
           }  
            
       }
       else
       {
           
$filesize = round($filesize, 1);
           return 
$filesize." Кб";   
       }
   
   }
   else
   {
       
$filesize = round($filesize, 1);
       return 
$filesize." байт";   
   }
  
}

?>
Принцип прост, функция принимает в качестве аргумента имя файла или путь к нему и последовательно сравнивает размер. Если больше 1024 байт, то выводит значение в килобайтах и т.д.. Функция round укорачивает кол-во знаков после разделителя точки, т.е. целое число и одна десятая.
Урок закончен
Обсудить на форуме
По материалам книги "Головоломки на PHP для хакера".
Array
  • Яндекс.Метрика Здесь находится аттестат нашего WM идентификатора 185571665285
  • "LPHPRU" © 2009-2022