検索
ホームページバックエンド開発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 までご連絡ください。
PHPの継続的な使用:その持久力の理由PHPの継続的な使用:その持久力の理由Apr 19, 2025 am 12:23 AM

まだ人気があるのは、使いやすさ、柔軟性、強力なエコシステムです。 1)使いやすさとシンプルな構文により、初心者にとって最初の選択肢になります。 2)Web開発、HTTP要求とデータベースとの優れた相互作用と密接に統合されています。 3)巨大なエコシステムは、豊富なツールとライブラリを提供します。 4)アクティブなコミュニティとオープンソースの性質は、それらを新しいニーズとテクノロジーの傾向に適応させます。

PHPおよびPython:類似点と相違点を調査しますPHPおよびPython:類似点と相違点を調査しますApr 19, 2025 am 12:21 AM

PHPとPythonはどちらも、Web開発、データ処理、自動化タスクで広く使用されている高レベルのプログラミング言語です。 1.PHPは、ダイナミックウェブサイトとコンテンツ管理システムの構築によく使用されますが、PythonはWebフレームワークとデータサイエンスの構築に使用されることがよくあります。 2.PHPはエコーを使用してコンテンツを出力し、Pythonは印刷を使用します。 3.両方ともオブジェクト指向プログラミングをサポートしますが、構文とキーワードは異なります。 4。PHPは弱いタイプの変換をサポートしますが、Pythonはより厳しくなります。 5. PHPパフォーマンスの最適化には、Opcacheおよび非同期プログラミングの使用が含まれますが、PythonはCprofileおよび非同期プログラミングを使用します。

PHPおよびPython:さまざまなパラダイムが説明されていますPHPおよびPython:さまざまなパラダイムが説明されていますApr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPとPython:彼らの歴史を深く掘り下げますPHPとPython:彼らの歴史を深く掘り下げますApr 18, 2025 am 12:25 AM

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

PHPとPythonの選択:ガイドPHPとPythonの選択:ガイドApr 18, 2025 am 12:24 AM

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPとフレームワーク:言語の近代化PHPとフレームワーク:言語の近代化Apr 18, 2025 am 12:14 AM

PHPは、多数のWebサイトとアプリケーションをサポートし、フレームワークを通じて開発ニーズに適応するため、近代化プロセスで依然として重要です。 1.PHP7はパフォーマンスを向上させ、新機能を紹介します。 2。Laravel、Symfony、Codeigniterなどの最新のフレームワークは、開発を簡素化し、コードの品質を向上させます。 3.パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率をさらに改善します。

PHPの影響:Web開発などPHPの影響:Web開発などApr 18, 2025 am 12:10 AM

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか?スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか?Apr 17, 2025 am 12:25 AM

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。

See all articles

ホット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

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境