[Javascript , PHP] ファイルサイズのバイト数をKBやMBに表示変更する簡単コード

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

インターネットブラウザによる、FileAPIの対応がIE10で実現されて、殆どのブラウザで実装されたことにより、かなり大きな割合でブラウザを使ってネイティブアプリケーションと同じような機能を持つことが出来るように成りました。
 

忘れてはいけないのが、iPhoneにおいても、iOS11から実装された「ファイル管理アプリ」により、スマホでもPCでも、結構柔軟なアプリを構築することができるようになったのは非常に嬉しいですね。
 

そんなファイル管理をする際に、データプロパティには、ファイル属性や更新日時など様々な情報がついていますが、インターフェイス表示にファイルサイズを欠かすことはできません。
 

そして、当たり前のようにどれもバイト数で登録されていますが、そのまま表示するのが非常に見苦しかったので、簡単にKBやMB(GB、TB)として表示できるように、スニペットを作っておきました。
 

WEBページで便利に使えるように、javascript版と、PHP版の2つを作っておいたので、コピペで使える備忘録とします。
 

FileAPIの網羅率


 

“Can I use”で調べてみると、Global Usageが97.1%もあるではないですか。
 

opera-mini以外の各ブラウザの最新バージョンは全て対応可能という結果です。
 

これはもはや、ブラウザ標準と言ってもいいでしょうね。
 

でも、ブラウザ毎に仕様が微妙に違うことも中にはあるはずなので、プログラム検証は入念に行いましょう。

javascript

 

 

デジタルの世界では単位が変わるのが1024毎(2の10乗)なので、その単位を基準に割ってから、桁数調整をしています。
 

最終的にはそれに単位をつけて完了ですが、PBなどを増やしたい場合は、内部のunits配列の後ろにつければ対応可能です。
 

また、たまにシステムによっては、ファイルサイズが1000単位で計算したほうがいい場合もあるので、適宜1024 -> 1000に切り替えてお使いください。

php

 

 

javascript版と同様のソースコードにしておいたので、結果も同じです。
CLIを基準にしたコードにしてますが、functionのみを抜き取ってお使いください。

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です