PHPでファイルサイズを取得する方法を現役エンジニアが解説【初心者向け】

初心者向けにPHPでファイルサイズを取得する方法について現役エンジニアが解説しています。ファイルサイズを取得する方法にはfilesize関数を使う方法があります。filesize関数とは、引数にファイルを指定するとファイルのサイズを調べてくれる関数です。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

今回は、PHPでファイルサイズを取得する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

PHPについてそもそもよく分からないという方は、PHPとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、PHP/Laravel講座の内容をもとに紹介しています。

 

田島悠介

今回は、PHPに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PHPでファイルサイズを取得する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 
この記事はPHPでファイルサイズを取得する方法について解説します。PHP開発でファイル操作を行うことがあります。

その際にファイルのサイズが何バイトなのかを調べるときにfilesize関数を使います。

この記事を参考にfilesize関数の使い方を覚えていきましょう。
 

目次

 

filesize関数とは

filesize関数とはファイルのサイズを調べるために準備されたPHPの標準の関数です。

サイズの単位はバイト単位になります。
 

[PR] PHPのプログラミングで挫折しない学習方法を動画で公開中

filesize関数の使い方

filesize関数は以下のように使えます。

ファイルサイズ = filesize(ファイル名);

filesize関数の引数にはファイルサイズを確認する名をファイルパスから指定します。戻り値は引数として設定したファイルのファイルサイズをバイト単位で返します。

引数に設定したファイルが存在しない場合はfalseを返し、Warningエラーが表示されます。
 

実際に書いてみよう

では実際にPHPでfilesize関数を使ってファイルの大きさを調べるプログラムを作成してみましょう。
 

プログラムソースコード

<?php
// ファイルが存在する時はバイト単位でファイルサイズが返ってくる
$filesize01 = filesize('/Library/WebServer/Documents/test/test.txt');
var_dump($filesize01);

echo '<br/>';

// ファイルが存在しない時はfalseを返し、Warningエラーが表示される
$filesize02 = filesize('/Library/WebServer/Documents/test/test02.txt');
var_dump($filesize02);
?>

 

実行結果

int(3079)

Warning: filesize(): stat failed for /Library/WebServer/Documents/test/test02.txt in /Library/WebServer/Documents/TEST/test.php on line 8
bool(false)

今回3079バイトのtest.txtを準備しました。filesize関数の引数に設定すると数値型で3079という値が戻ってきました。

また、ファイルが存在しないパスやファイル名を設定するとfaleを返しつつ、Warningエラーを表示させます。
 

まとめ

この記事ではPHPでファイルサイズを取得する方法について解説しました。
 

筆者プロフィール

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。
TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、PHPやフレームワークのLaravelを使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。