ホームページ > php教程 > php手册 > php でローカル ファイルを読み取るための一般的な関数 (fopen および file_get_contents)_php の基本

php でローカル ファイルを読み取るための一般的な関数 (fopen および file_get_contents)_php の基本

WBOY
リリース: 2016-05-16 09:00:18
オリジナル
3198 人が閲覧しました

以下では、例として .txt ファイルを使用して、PHP のローカル ファイルを読み取る機能を紹介します。ファイルを読み取るには、fopen または file_get_contents を使用できます。File_get_contents の方が簡単ですが、fopen は、読み取った内容を表示するために fread の協力が必要です。

1. まず、fopen() 関数を紹介します

以下に、ローカル ファイルを直接開くコード デモを示します。必要な箇所を追加しました。注釈付き:

コードをコピー コードは次のとおりです。

//ファイルを直接開くためのインスタンス コードローカル ファイル //ローカル ファイルが xmlas.txt という名前のテキストであるとします。
$filedemo = "xmlas.txt";
$fpdemo = fopen($filedemo,"r" );
if ($fpdemo){
while(!feof($fpdemo)){
//1000 までに読み取られる文字数
$datademo = fread($fpdemo, 1000); fclose($fpdemo);

2. file_get_contents() 関数を使用して、ファイル全体を文字列で出力します。

xmlas.txt テキスト ファイルに次のような文があるとします。「Current Movies There」情熱はますます少なくなります。オーガズムをすべて味わいたい場合は、Japanese Love

をご覧ください。

アクション映画!
file_get_contents() 関数のコード例は次のとおりです。

コードをコピー コードは次のとおりです。

echo file_get_contents ("xmlas .txt");
//このときの出力内容はxmlas.txtの内容です:
//最近の映画はどんどん情熱が薄れてきています。クライマックスをすべて味わいたいなら、日本のラブアクション映画をぜひ観てください!
?>

3. 別のファイルではなくローカル フォルダーを読み取る方法:
以下のコード例を参照してください。この例では、 xmlas という名前のフォルダーを読み取ります。

コードをコピー コードは次のとおりです。

$dirdemo = opendir('/xmlas');
while(($filedemo = readdir($dirdemo))!= false){
if ($filedemo!="." && $filedemo!="..") {
$nsdemo =explode('.', $filedemo);
echo $nsdemo[0 ];
} }
}
Closedir($dirdemo);
?>

4. fopen を使用してファイルを書き込むこともできます。

コードをコピー コードは次のとおりです。

/**
*書き込みfopen ファイルを使用
*@param string $filename
*@param string $contents
*@return boolean
*/

function wirte($filename,&$contents) {
$fp=fopen($filename,"wb");
if($fp)
{
flock($fp,LOCK_EX);// ロックできるファイルは 1 つだけです同時に人間の操作
fwrite($fp,$contents);
flock($fp,LOCK_UN);//データを保存してファイルのロックを解除し、保存します
fclose($fp);
true を返す;
}else
{
false を返す;
}
}

このように、fopen と fwrite を使用するだけでファイルの読み書きができます。

注: lファイルを開きます

ファイルを開く前に、ファイルのパスとファイルが存在するかどうかを確認する必要があります。

$_SERVER["DOCUMENT_ROOT"] 組み込みグローバル変数を使用して、サイトの相対パスを取得します。次のように:

コードをコピー コードは次のとおりです。
$root = $_SERVER[“DOCUMENT_ROOT”];


関数 file_exists() を使用して、ファイルが存在するかどうかを検出します。次のように:

コードをコピー コードは次のとおりです。

If(!file_exists("$root /order.txt")){echo 'ファイルが存在しません';}

これはより合理的で実用的かもしれません。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート