メインコンテンツへスキップ
  1. 記事一覧(旧)/

PHPでファイルサイズを取得する方法

PHP
⚠️

⚠️

この記事は移行作業中です。レイアウトが崩れる場合があります。

目次

 

2GBの壁と4GBの壁がある。

 

2GBまで #

$size = filesize("ファイルパス");

 

4GBまで #

負の値を正の値に変換

$size = sprintf("%u", filesize("ファイルパス"));

 

4GB以上 #

調べてもわからなかったので妥協案

Node.jsで取得してPHPで利用する。

Node.jsのインストールが必要。

 

size.js

var fs = require('fs');
var stat = fs.statSync(process.argv[2]);
console.log(stat.size);

 

php

$size = exec("node size.js ファイルパス");

 

size.jsの名前はお好みで。

jsファイルとphpファイルは同じ階層に設置する。

上限は知らないが、所有する最大のファイル102GB(109,812,537,419バイト)は正確に取得できた。