ホームページ バックエンド開発 PHPチュートリアル Web サイト構築における PHP プログラミングの 8 つの一般的なファイル操作_PHP チュートリアル

Web サイト構築における PHP プログラミングの 8 つの一般的なファイル操作_PHP チュートリアル

Jul 22, 2016 am 09:02 AM
php 優れた そして 対処する 一般 操作する 書類 はい サーバ 地元 目次 プログラミング Webサイト いいえ

ファイルとディレクトリの操作


PHP はローカルサーバー上のファイルやディレクトリを処理するのに非常に便利ですが、パーミッションやパス関連の問題が発生する場合があります

1.ファイルを開きます

resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )

$handle = fopen(filename,mode)//ファイルを開き、このファイルのリソースを表すハンドルを返します

ファイル名には、相対パス、絶対パス、またはネットワーク プロトコル モードを使用できます。開始モードは rr+ww+aa+xx+b です。
バイナリ ファイルを操作するときに「b」フラグを指定しないと、破損したイメージ ファイルや rn 文字に関する奇妙な問題など、いくつかの奇妙な問題が発生する可能性があります。

移植性の理由から、fopen() でファイルを開くときは常に「b」フラグを使用することを強くお勧めします。

ファイルを開く方法はいくつかあります

$fp = @fopen('log.txt',"rb");
$fp = @fopen('../log.txt',"rb");
$fp = @fopen("http://www.runer.com.cn/default.htm","rb");//ftp や ghoper などのプロトコルを php.ini で使用することもできます。ファイルを有効にする必要があります

/////////////////////////////コード部分////////////////// /// /////////////////////

$filename1 = "userinfo.txt"; //このファイルはディレクトリまたは include_path に存在します

$filename2 = "test.txt"; //このファイルはディレクトリまたは include_path に存在しません

$resource1 = fopen($filename1,"rb");
@$resource2 = fopen($filename2,"rb");//このファイルはディレクトリに存在せず、インクルードされたファイルのパスを見つけるために include_path または include_path が使用されないため、この操作はエラーを報告します。エラーサプレッサー @ を使用すると、ブラウザーを強制的にエラーメッセージが出力されなくなります

if($resource1)

echo "ファイル {$filename1} が正常に開きました";
if(!@fopen($filename2,"r"))

echo "ファイル {$filename2} を開けませんでした";
//////////////////////////////////////////////// /// //////////////////////////

----------出力結果--------------- - ------------

ファイル userinfo.txt が正常に開きました

-------------------------------------------------- ------------------

2. ファイルを使用した後、ファイルが使用されたことを PHP に明示的に伝える必要があります。これにより、オペレーティング システムは、ファイルのすべての内容がバッファからハードディスクに正しくフラッシュされるようにします

fclose() を使用してファイルを閉じます

bool fclose (リソースハンドル)//開いているファイルポインターを閉じる

3. ファイルの読み取り。fopen 関数の mode パラメーターを使用すると、ファイルからデータを読み取ることができます。
string fgets ( int handle [, int length] ) はファイル ポインターから行を読み取り、バイナリ ファイルで fgets を試行すると予測できない結果が生成されます

長さが指定されていない場合、デフォルトで 1K データが読み取られ、改行文字 (戻り値に含まれる)、EOF、または長さ - 1 バイトが読み取られた後に停止します

string fgetss ( resource handle [, int length [, string allowed_tags]] ) ファイルポインターから行を読み取り、HTML タグをフィルターで除外します

fgetc() は 1 文字を読み取ります

fread() はバイナリデータを読み取ります

/////////////////////////////コード部分////////////////// /// /////////////////////

$handle = fopen ("test.jpg", "rb");
$c;
while (!feof($handle)) {

$contents .= @fread($handle, 8192);// 読み取りをループして、大きなファイルにマージします

}

fclose($ハンドル);
//////////////////////////////////////////////// /// //////////////////////////

----------出力結果--------------- - ------------

-------------------------------------------------- ------------------

4. ファイルの読み取りステータスを確認します

各ファイル ハンドルには、fopen 関数のモード パラメーターに従って、次の操作がファイル内のどこで行われるかを示すファイル ポインター、またはカーソルがあります

ファイル ポインターは、最初はファイルの先頭 (0) またはファイルの末尾に配置されます

feof() はファイルが最後に到達したかどうかを判断できます (関数は最後に到達すると TRUE を返します)

filesize() 関数はファイルのサイズを返します 5. ファイルを書き込みます

fwrite()関数はファイル書き込みを実行します

/////////////////////////////コード部分////////////////// /// /////////////////////

$ファイル名 = 'test.txt';
$somec;



// まず、ファイルが存在し、書き込み可能であることを確認する必要があります。

if (is_writable($filename)) {

// この例では、追加モードを使用して $filename を開きます


// したがって、ファイル ポインタはファイルの先頭になります

// fwrite() を使用するときに $somecontent が書き込まれる場所です。

if (!$handle = fopen($filename, 'a')) {

echo "ファイル $filename を開けません";
出る

}

// 開いたファイルに $somecontent を書き込みます。

if (fwrite($handle, $somecontent) === FALSE) {

echo "ファイル $filename に書き込めません";
出る

}

echo "$somecontent がファイル $filename に正常に書き込まれました";
fclose($ハンドル);
} その他 {

}

echo "ファイル $filename は書き込み可能ではありません";
//////////////////////////////////////////////// /// /////////////////////////

----------出力結果--------------- - ------------

これらのテキストがファイルに正常に追加され、ファイル test.txt に書き込まれました

-------------------------------------------------- ------------------

バイナリデータの場合、ディスクに書き込まれるデータバイト数を含む 3 番目のパラメータを指定する必要があります

$result = @fwrite($fp,$binary_data,mb_strlen($binary_data,'8bit'));



6. ファイル権限とその他の情報

is_readable()//ファイルが読み取り可能かどうかを判断します

is_writeable()//ファイルが書き込み可能かどうかを判断します

is_writable()//ファイルが書き込み可能かどうかを判断します

fileperms()//ファイルパーミッションを判定する(UNIX風ファイルパーミッションテスト関数)

file_exists()//このファイルが存在するかどうか

fileowner()//ファイルが属するユーザーを決定します

filegroup()//ファイルが属するグループを決定します

7. ファイルを削除して名前を変更します

unlink()//ファイルを削除

rename()//ファイルの名前を変更します

8. カタログにアクセス

ディレクトリアクセスにはスラッシュ「/」を使用することをお勧めします。これは Windows および UNIX システムと互換性があります

basename()//パス情報を除いたファイル名を返します

dirname()//ファイル名のディレクトリ部分を返します

realpath()//相対パスを受け入れ、ファイルの絶対パスを返します

pathinfo()//指定されたパスのディレクトリ名、基本ファイル名、拡張子を抽出します

opendir()//ディレクトリを開き、リソースハンドルを返します

readdir()//ディレクトリエントリを読み取る

rewinddir()//読み取りポインタを先頭に戻します

Closedir()//読み取りハンドルを閉じる

chdir()//現在のスクリプトの実行中に現在の作業ディレクトリを変更します

mkdir()//ディレクトリを作成する

rmdir() ディレクトリを削除します

/////////////////////////////コード部分////////////////// /// /////////////////////

//////////////////////////////////////////////// /// /////////////////////////

----------出力結果--------------- - ------------

ファイル名: web : ファイルタイプ: dir

ファイル名: 研究: ファイルタイプ: dir

www.abm163.comに転載

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/371884.html技術記事ファイルとディレクトリの操作 PHP は、ローカル サーバー上のファイルとディレクトリを処理するのに非常に便利ですが、パーミッションやパスに関連した問題が発生する場合があります。 1. ファイル リソース fopen (string...
) を開きます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

今まで知らなかったことを後悔している 7 つの PHP 関数 今まで知らなかったことを後悔している 7 つの PHP 関数 Nov 13, 2024 am 09:42 AM

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

コーディングの鍵: 初心者のための Python の力を解き放つ コーディングの鍵: 初心者のための Python の力を解き放つ Oct 11, 2024 pm 12:17 PM

Python は、学習の容易さと強力な機能により、初心者にとって理想的なプログラミング入門言語です。その基本は次のとおりです。 変数: データ (数値、文字列、リストなど) を保存するために使用されます。データ型: 変数内のデータの型 (整数、浮動小数点など) を定義します。演算子: 数学的な演算と比較に使用されます。制御フロー: コード実行のフロー (条件文、ループ) を制御します。

Python による問題解決: 初心者プログラマーとして強力なソリューションをアンロックする Python による問題解決: 初心者プログラマーとして強力なソリューションをアンロックする Oct 11, 2024 pm 08:58 PM

Python は、問題解決の初心者に力を与えます。ユーザーフレンドリーな構文、広範なライブラリ、変数、条件文、ループによる効率的なコード開発などの機能を備えています。データの管理からプログラム フローの制御、反復的なタスクの実行まで、Python が提供します

See all articles