今日の人気記事

  1. 変数を文字列型に変換 - strval関数

ファイル情報を配列で表示 - stat()

当ページのリンクには広告が含まれています。

プログラミング言語PHPで、ファイル情報を配列で表示する関数 stat()を紹介します。

stat関数

array stat ( string $filename )
ファイル情報を配列で表示します。
引数
$filename
情報を表示するファイルを指定します。
返り値
指定したファイルの情報を配列で返します。

ファイル情報の配列構成

配列は「数値キー」「連想キー」から構成されています(要素の値は同じです)。

数値キー 連想キー 概要
0 dev デバイス番号
1 ino inode 番号
2 mode inode プロテクトモード
3 nlink リンク数
4 uid 所有者のユーザー ID
5 gid 所有者のグループ ID
6 rdev inode デバイス の場合、デバイスの種類
7 size バイト単位のサイズ
8 atime 最終アクセス時間 (Unix タイムスタンプ)
9 mtime 最終修正時間 (Unix タイムスタンプ)
10 ctime 最終 inode 変更時間 (Unix タイムスタンプ)
11 blksize ファイル IO のブロックサイズ††
12 blocks 512 バイトのブロックの確保数††

Windowsで実行した場合には「0」が返されます。
††ブロックサイズが取得できない場合には「-1」が返されます。

サンプルコード

定義済み定数(__FILE__)を使って、スクリプトファイルの情報を配列で表示するサンプルコードです。

stat ( ファイル名 )
<?php
var_dump( stat(__FILE__) );
?>

実行結果です。

array(26) {
  [0]=>
  int(16777219)
  [1]=>
  int(1949614)
  [2]=>
  int(33188)
  [3]=>
  int(1)
  [4]=>
  int(501)
  [5]=>
  int(20)
  [6]=>
  int(0)
  [7]=>
  int(37)
  [8]=>
  int(1406514262)
  [9]=>
  int(1406514259)
  [10]=>
  int(1406514260)
  [11]=>
  int(4096)
  [12]=>
  int(8)
  ["dev"]=>
  int(16777219)
  ["ino"]=>
  int(1949614)
  ["mode"]=>
  int(33188)
  ["nlink"]=>
  int(1)
  ["uid"]=>
  int(501)
  ["gid"]=>
  int(20)
  ["rdev"]=>
  int(0)
  ["size"]=>
  int(37)
  ["atime"]=>
  int(1406514262)
  ["mtime"]=>
  int(1406514259)
  ["ctime"]=>
  int(1406514260)
  ["blksize"]=>
  int(4096)
  ["blocks"]=>
  int(8)
}

ファイル情報が「数値キー」と「連想キー」の配列で返されていることがわかりますね。

ファイル の人気記事

  1. ファイルの中身を配列に格納 - file()
  2. ファイルがディレクトリかどうかを確認 - is_dir()
  3. ファイルから1行ずつ読み込む - fgets()
  4. 文字列をファイルに書き込む - file_put_contents()
  5. PHP関数リファレンス

関連記事(一部広告含む)