ホームページ  >  記事  >  php教程  >  PHP ファイル関数を使用してファイル情報を取得する方法のチュートリアル

PHP ファイル関数を使用してファイル情報を取得する方法のチュートリアル

WBOY
WBOYオリジナル
2016-06-21 08:53:171030ブラウズ

前回の PHP ディレクトリ関数チュートリアルでは、主にディレクトリ (フォルダー) の読み取りとトラバーサルの方法を紹介しましたが、最も基本的なファイル管理システムでは、ファイル情報とファイル サイズを読み取り、ディスクの使用状況を確認することも必要です。ファイルの変更やアクセス時間、ファイルの削除や移動、整理などの機能のすべてに、PHP ファイル関数を介したファイル システムとの対話が必要です。

基本的な PHP ファイル関数の概要

PHPファイル関数dirname()とbasename()の違い

dirname() はファイルディレクトリパスのディレクトリ部分を取得しますが、basename() はディレクトリを除いたファイル名を取得します

PHP ファイル関数を通じて基本的なファイル情報を取得するにはどうすればよいですか?

以前に PHP ディレクトリを読み取る例を紹介しましたが、ディレクトリ (フォルダー) トラバーサル関数 listSubDir に基づいた PHP ファイル情報関数を追加するだけです。 listSubDir 関数については、PHP のディレクトリ (フォルダー) トラバーサルの例を参照してください。

1. ファイル情報を出力する getFileInfo 関数を次の場所に追加します

1
2
3
4
5
6
7


if (is_file($newDir)) {
echo $dirC.$subFile.":文件属性
"
;
       
        getFileInfo($newDir);
    }
?>

1
2
3
4
5
6
7


場合<🎜> (<🎜>is_file<🎜>(<🎜>$newDir<🎜><スパンクラス="br0">)<🎜><スパンクラス="br0">)<🎜> {<🎜>
エコー<🎜> $dirC<🎜>.<🎜>$subFile<🎜>.<🎜> ":ファイル属性
";
                                          getFileInfo($newDir);
}
?>

2. PHP ファイル関数を適用してファイル情報を取得する関数のサンプルコード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

function getFileInfo($fileInfo)
{
エコー "ファイルディレクトリ情報:
"
;
                                                                         
エコー "ファイルの種類: ".ファイルタイプ($fileInfo) ."
";
エコー "ファイル サイズ:".filesize($fileInfo) ."
";

エコー "最終訪問時刻:".日付("j F Y H:i",fileatime($fileInfo))."< ;br/>";
エコー "最終変更時刻:".日付("j F Y H:i",filemtime($fileInfo))."< ;br/>";
エコー "実行可能ファイルかどうか:".(is_executable($fileInfo<🎜) > )?「はい」:「いいえ」). "
"
; エコー
「リンクですか?」 >)?「はい」:「いいえ」)."
"; エコー "読み取り可能かどうか: ".(is_readable(
$fileInfo)?「はい」:「いいえ」)." < ;br/>"; エコー "書き込み可能: ".(is_writable(
$fileInfo) ?「はい」:「いいえ」)."< ;br />"; エコー 「絶対ファイルパス」:realpath($fileInfo)
;         clearstatcache();
    }

手順:

このコードは主に、PHP ファイル関数を通じて次の情報を取得します: ファイルの種類、ファイル サイズ、最近のアクセス、変更時刻、ファイルの読み取り可能および書き込み可能属性など。

知識ポイント:

1. filetype 関数: ファイルの種類を取得します。関数が正常に実行された場合は、次のいずれかの値を返します。それ以外の場合は、False を返します。 7 つの可能な値: fifo、char、dir、block、link、file、unknown

2. filesize 関数: バイト単位で計算されたファイル サイズを取得します

3. fileatime 関数: ファイルの最新アクセス時刻、filemtime 関数: ファイルの最新変更時刻。これら 2 つの PHP ファイル関数によって返されるタイムスタンプは UNIX タイムスタンプに似ているため、Date 関数を使用してフォーマットする必要があります。

4. is_executable、is_link、is_readable、is_writable: これら 4 つの PHP ファイル関数は、ファイルが実行可能かどうか、リンクであるかどうか、読み取り可能かどうか、書き込み可能かどうかを返します。

: PHP ファイルステータス関数は実行に時間がかかるため、自動的にキャッシュされます。キャッシュをクリアしたい場合は、clearstatcache() 関数を使用して最新のファイルを取得できます。情報。

余談ですが、上記の PHP ファイル関数で取​​得したファイル情報は、ファイルのすべての詳細情報を配列の形式で返す stat($file) 関数を通じて取得することもできます。 print_r関数を使用して出力します。

5. realpath 関数: ファイルの絶対パスを返します。ディスク上のファイルの正確な場所を確認する必要がある場合にこの関数を使用します。

上記の関数はファイル名パラメータに対応しています。取得するファイルパスが PHP コード実行ファイルと同じディレクトリにない場合は、特定のファイルパスを取得する必要があることに注意してください。

ファイルの作成方法

方法 1: 通常、PHP のファイル操作関数 fopen を使用して書き込みモードでファイルを開き、内容を書き込んで保存することでファイルが作成されます。 PHPファイルの書き方は?

方法 2: PHP ファイル操作関数 touch を使用して作成します。 touch 関数には、作成されたファイル名、アクセス時刻、変更時刻の 3 つのパラメーターがあります。アクセス時刻と変更時刻はオプションです。デフォルト値は現在のシステム時刻です。指定したファイルが存在しない場合は、自動的に作成されます。 touch 関数を使用すると、作成したファイルの最終アクセス時刻と変更時刻を変更できます。両方のパラメータは UNIX タイムスタンプであるため、mktim 関数を使用して変換する必要があります。

ファイルの移動とコピーを行う PHP ファイル機能

rename 関数はファイルの移動に、copy 関数はファイルのコピーに使用できます。これら 2 つの PHP ファイル操作関数の違いは、rename 関数は古いファイルを新しいディレクトリに移動するのに対し、copy 関数は以下のようになります。名前が示すように、古いファイルを新しいディレクトリにコピーします。ソース ディレクトリ内のファイルはまだ存在します。

PHP でファイルを削除する方法

前回の PHP ディレクトリ機能の記事で、ディレクトリを削除するときは、ディレクトリ内にファイルがある場合は、そのファイルを削除する必要があると述べました。ファイルを削除しますか?

1 つは PHP ファイル関数 unlink を使用して実装する方法で、もう 1 つはシステム関数を使用してシステム コマンド (WINDOWS システムでのファイルの削除など) を実行する方法です。

ファイルの作成、移動、コピー、削除のコード例は次のとおりです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16


$fileDir = "leapsoulcn/fileinfo.txt";

タッチ($fileDir,mktime(12 5555410,2000),mktime(1255554102005));

//ファイルを削除するには 2 つの方法がありますが、使用する場合は 1 つの方法からログアウトしてください
システム("del Leapsoulcnfileinfo.txt");

リンク解除($fileDir);

//ファイルを移動
名前変更("leapsoulcn/newfileinfo.txt","leapsoulcn/php/fileinfo.txt");

//ファイルをコピー
copy("leapsoulcn/php/fileinfo.txt","leapsoulcn/newfileinfo.txt");
?>

ここまでで、PHP ファイル関数を使用してファイル情報を取得し、ファイルを作成、移動、コピー、削除する方法を、以前に紹介した PHP ファイルの読み書きチュートリアル、PHP ディレクトリ関数チュートリアルと組み合わせて紹介しました。 PHP ファイルのアップロード チュートリアルは、基本的なものであると言うべきですが、PHP ファイルのすべての関数を完全にカバーしており、PHP 初心者が学び、使用するのに非常に適しています。

注意: PHP Web サイト開発チュートリアル-leapsoul.cn 転載の際は、元のソースとこの記述をリンクの形で明記してください。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。