Anasayfa / Php / Php Dosya Boyutu Hesaplama

Php Dosya Boyutu Hesaplama

Bazen hiç beklemediğimiz anlarda bazı fonksiyonlara ihtiyaç duyabiliriz. Misal; ben içerik yönetim sistemi kodlarken veri tabanı yedeğini yönetim panelinden aldırıyordum ve yedekleri yönetme olanağı sağlıyordum. Alınan yedeklerin dosya boyutunun, yedeğin yan tarafındaki kutucuğa Kb (Kilobyte) cinsinden yazmasını istiyordum.

Sizde bu veya buna benzer durumlarla doğal olarak karşılaşabilirsiniz. Bu yazımızda Php’de dosya boyutunu nasıl hesaplayabiliriz onu anlatacağız. Bu dosya; resim, pdf, microsoft word dosyası olabilir. Herhangi bir dosyanın boyutunu php’de filesize(); fonksiyonu ile sorgulayabiliriz. Bu fonksiyon bize cevabı byte cinsinden dönderecektir.

Bu şekilde byte cinsinden dosyamızın boyutunu tespit etmiş olduk. Çalıştırdığımızda ise ekran görüntümüzde şu şekilde çıkmaktadır.

Bunu kilobyte cinsine çevirmek için ne yapmalıyız? : Aslında işlem çok basit, 1024 byte = 1 kb olduğuna göre, çıkan bu sonucu 1024’e bölüp yuvarladığımızda kb cinsinden sonuca ulaşmış oluruz. Yani şu şekilde geliştiriyoruz.

Bu şekilde yapıyoruz. Burada 1024’e bölüyor ve çıkan sonucu ceil(); fonksiyonumuz ile yuvarlıyoruz. Çalıştırdığımızda ekran çıktısı şu şekilde oluyor.

Bu şekilde sonuca ulaşmış olduk. Bu çıkan sonucu 1024’e tekrardan bölerek değeri Megabyte cinsinden, birdaha 1024’e bölerek değeri Gigabyte cinsinden sorgulamamız mümkün. Yani işin mantığı bu şekildedir. Anlamadığınız bir yer olursa yorum yazmakta çekinmeyiniz.

Bir önceki yazımız olan Php Türkçe Karakter Hatası ve Çözümü başlıklı makalemizi de okumanızı öneririz.

Öneriyoruz

Php Html Kodlarını Temizleme

Php’de yazdığınız kodların güvenlik açığı teşkil etmemesi için bazı önemlerin alınması gerekebilir. Gelen veriyi nasıl ...

2 Yorumlar

  1. Faydalı bir yazı olmuş çok işime yaradı teekkürler.

  2. Php ile dosyaları kilobyte veya megabyte cinsinden hesaplayarak, bazı özel scriptlerde kullanım yapmak işimizi kolaylaştırabilir. Güzel bir makale oluş, teşekkür ederim.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir