動的 Web ページ PHP プログラミングにおける 8 つの一般的なファイル操作方法
文件和目录的操作
PHP处理本地服务器上的文件和目录是非常方便的,但有时候会出现权限和路径相关的问题
1.打开文件
resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )
$handle = fopen(filename,mode)//打开文件,返回代表此文件的资源的句柄
文件名称可以使用相对路径或者绝对路径也可以使用网络协议模式,打开模式具有r\r+\w\w+\a\a+\x\x+\b
在操作二进制文件时如果没有指定 'b' 标记,可能会碰到一些奇怪的问题,包括坏掉的图片文件以及关于 \r\n 字符的奇怪问题。
为移植性考虑,强烈建议在用 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文件中的allow_url_fopen选项
////////////////////////////代码部分////////////////////////////////////////
$filename1 = "userinfo.txt";//目录下或include_path中存在这个文件
$filename2 = "test.txt";//目录下或include_path并不存在这个文件
$resource1 = fopen($filename1,"rb");
@$resource2 = fopen($filename2,"rb");//因为目录中不存在这个文件,并且并未使用或include_path寻找包含文件所在路径则此操作会报错,使用错误抑制符@可以迫使浏览器不输出错误信息
if($resource1)
echo "打开文件{$filename1}成功";
if(!@fopen($filename2,"r"))
echo "打开文件{$filename2}不成功";
//////////////////////////////////////////////////////////////////////////
---------------------输出结果----------------------------------------
打开文件userinfo.txt成功
---------------------------------------------------------------------
2.使用完毕文件后,要显式的告诉PHP已经使用完文件,让操作系统确保将文件的所有内容正确地从缓冲区刷新到硬盘
使用fclose()关闭文件,
bool fclose ( resource handle )//关闭一个已打开的文件指针
3.读取文件,fopen函数的mode参数允许读取,PHP提供了几个函数从文件读取数据
string fgets ( int handle [, int length] )从文件指针中读取一行,在二进制文件上尝试fgets会产生不可预测的结果
如果不指定长度,默认读取1K数据,碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止
string fgetss ( resource handle [, int length [, string allowable_tags]] )从文件指针中读取一行并过滤掉 HTML 标记
fgetc()读取单个字符
fread()读取任意二进制数据
////////////////////////////代码部分////////////////////////////////////////
$handle = fopen ("test.jpg", "rb");
$c;
while (!feof($handle)) {
$contents .= @fread($handle, 8192);//循环读取并将其合并为一个大块文件
}
fclose($handle);
//////////////////////////////////////////////////////////////////////////
---------------------输出结果----------------------------------------
----------------------------------------------- --- -----------------------
4. ファイルの読み取りステータスを確認します
各ファイル ハンドルにはファイル ポインター、または次のファイルへのポインタ ファイル内で操作が行われるカーソル。 fopen 関数
のモード パラメータに従って、ファイル ポインタは最初はファイルの先頭 (0) またはファイルの末尾に配置されます。
feof() はファイルが最後に到達したかどうかを判断できます (関数は終了後に TRUE を返します)
filesize() 関数はファイルのサイズを返します 5. ファイルを作成します
fwrite() 関数ファイル書き込みを実行します
///////////// //////////////コード部分////////////// ///////////////////// //////
$filename = 'test.txt';
$somec;
/ / まず、ファイルが存在し、書き込み可能であることを確認する必要があります。
if (is_writable($filename)) {
// この例では、追加モードを使用して $filename を開きます。
// したがって、ファイル ポインタはファイルの先頭になります。
// fwrite() を使用するときに $somecontent が書き込まれる場所です。
if (!$handle = fopen($filename, 'a')) {
echo "ファイル $filename を開けません";
exit;
}
// $somecontent を書き込みます私たちが開いたファイル。
if (fwrite($handle, $somecontent) === FALSE) {
echo "ファイル $filename に書き込めません";
exit;
}
echo "$somecontent は正常に実行されましたファイル $filename";
fclose($handle);
} else {
}
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()//Openディレクトリを検索し、リソースハンドルを返します
readdir()//ディレクトリエントリを読み取ります
rewinddir()//読み取りポインタを先頭に戻します
closedir()//読み取りハンドルを閉じます
chdir ()//現在のスクリプトの実行中に現在の作業ディレクトリを変更します
mkdir()//ディレクトリを作成します
rmdir()ディレクトリを削除します
/// //////// //////////////////コード部分//////////////////////// ////// ///////////
////////////////////////////////// ////////////////////////////////////////
--- --- ---------------出力結果--------------------------------- ----------

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









PHPWarning:fopen():SSLoperationfailedinfile.phponlineX を解決する方法 PHP プログラミングでは、fopen 関数を使用してファイルまたは URL を開いて関連する操作を実行することがよくあります。ただし、fopen 関数を使用すると、Warning:fopen():SSLoperationfailedinfile.p のようなエラーが発生することがあります。

PHPWarning:fopen():failedtoopenstream:No suchfileordirectory PHP 開発を使用する過程で、ファイル操作の問題がよく発生します。その 1 つが「PHPWarning:fopen():failedtoopenstream:No suchfileordirectory」です。

PHPWarning:fopen():failedtoopenstream:Permissiondenied を解決する方法 PHP プログラムの開発プロセスでは、PHPWarning:fopen():failedtoopenstream:Permissiondenied などのエラー メッセージに遭遇することがよくあります。このエラーは通常、ファイルまたはディレクトリのアクセス許可が正しくないことが原因で発生します。

Matlab では、関数 fopen を使用してファイルを開き、その後のファイルの読み取りまたは書き込み操作のためにファイル識別子を返します。必要に応じて適切な権限オプションを選択してファイルを開き、操作が完了したらすぐにファイルを閉じます。ファイルを開いた後、システム リソースを解放する必要がなくなった時点でファイルを確実に閉じる必要があることに注意してください。また、ファイルのオープンに失敗したり、操作エラーが発生した場合には、エラー処理機構を使用して適切に処理できます。

PHP 開発では、ファイル操作が非常に一般的です。通常の状況では、ファイルの読み取り、書き込み、削除などの操作を実行する必要があります。このうち、fopen 関数と fread 関数はファイルの読み取りに使用でき、fopen 関数、fwrite 関数、fclose 関数はファイルの書き込みに使用できます。この記事では、PHP が fopen、fwrite、fclose を使用してファイル操作を実行する方法を紹介します。 1. fopen 関数 fopen 関数はファイルを開くために使用され、その構文は次のとおりです。

C の fopen() メソッドは、指定されたファイルを開くために使用されます。問題の構文を理解するために例を見てみましょう FILE*fopen(filename,mode) ファイルを開くために fopen() を使用するための有効なモードは次のとおりです: 'r'、'w'、'a'、'r+'、'w+ '、'a+'。詳細については、C ライブラリ function-fopen() を参照してください。

PHPWarning:fopen():failedtoopenstream:No suchfileordirectoryinfile.phponlineX を解決する方法 PHP プログラムを開発および実行するときに、PHPWarning:fopen():failedtoopenstream:No suchfileor が発生することがあります。

リソース ファイルは、アプリケーションやオペレーティング システムにさまざまなリソース情報を保存するために通常使用される特別な種類のファイルです。これらはアプリケーション開発で重要な役割を果たし、クロスプラットフォーム開発と国際化のサポートを提供します。リソース ファイルを使用すると、開発者はアプリケーション リソースをより適切に整理および管理できると同時に、さまざまなニーズにより適応できる豊かなユーザー エクスペリエンスを提供できます。
