序文:
PHP はさまざまなデータベースの操作をサポートしており、ファイル操作の操作方法も豊富です。多くの友人の現在の操作は依然としてファイル操作に基づいていますが、ファイルを操作する際には依然として多くの混乱や疑問が生じます。これは、私が日々の執筆プロセスで遭遇したファイル操作に関するいくつかの問題、およびフォーラムの友人が遭遇したいくつかの問題を集めたものです。
Q: 新しいファイルを作成するにはどうすればよいですか?
回答:
1. fopen (作成するファイル名、パラメータ) を使用します。パラメータは w、w+、a、a+ です。
2. exec (echo '' > 作成するファイル名) を使用します。システム メソッドを使用してファイルを作成することもできますが、touch Linux コマンドを使用してファイルを作成することもできます
。 Q: ファイルを作成できないのはなぜですか?
回答:
1. fopen を使用してファイルを作成する場合、パラメータは正しく使用されていますか?
2. システム権限の問題については、FTP ディレクトリに書き込み権限があるかどうかをウェブマスターに問い合わせてください。
3. FTP 権限の問題については、確認する必要があります。 PHP ファイルが書き込まれるディレクトリには書き込み権限が必要です。つまり、FTP ソフトウェアにログインした後、他のグループに書き込み権限が必要です。
そうでない場合は、アクセス許可を変更して、「
ファイルを配列に読み取るにはどうすればよいですか?」と尋ねてみてください。
回答: ファイル機能を使用します。
質問: すべてのファイルを読み取るにはどうすればよいですか?
答え:
1. fread($fp); を使用します。
2. PHP バージョンが 4.3.0 以上の場合は、file_get_contents(); を使用できます。
Q: ファイルが存在するかどうかを確認するにはどうすればよいですか?
回答: file_exists(); を使用してください。
もう一度質問してください: なぜ fopen() を使用して判断しないのでしょうか?
回答: 理由は、fopen から返されたデータが権限の問題により誤った判断につながる場合があるためです。
質問: WEB ページを読むときにエラーが発生するのはなぜですか?
回答
:
1. 渡したパラメータが間違っている可能性があります。Web ページを読み取るときは、r モードのみを使用してください。
2. 読みたい Web ページにアクセスできることを確認してください。
ファイルの関連する属性を取得できますか?
回答: PHP には、filemtime()、fileowner()、filegroup()、filectime()、fileatime() などのファイル属性を取得する一連のメソッドが用意されています。詳細な使用法についてはマニュアルを参照してください。
質問: PHP でファイルを開いた後、C のようにファイルの「カーソル」を配置できますか?
回答: はい、fseek(); を使用します。
質問: ファイルにアクセスするときに他の人がアクセスできないようにしたいのですが、どうすればよいですか?
回答:
1. 他のプログラムを使用して、ファイル操作のページへのユーザーのアクセスを制限できます。
2. flock();の
詳細なパラメータと使用方法については、マニュアルを参照してください。
ファイルを使用するか、データ行を指定しますか?
回答:
PHP にはそのような操作メソッドが用意されていませんが、これを組み合わせて使用できます。次のコードは、test.dat ファイル内の 3 行目のデータを削除することを示しています (test.dat ファイル内のデータは 2 行目以上です)。 3 行)
<?php
$filename=test.dat; //操作ファイルを定義 $delline=3 //削除する行数 if(!file_exsits($filename)){
die(指定されたファイルが見つかりませんでした!操作は中断されました!);
}
$farray=file($filename);//ファイル データを配列に読み込みます for($tmpa=0;$Tmpa<count($farray);$Tmpa++){
if(strcmp($Tmpa+1,$delline)==0){
//削除行の判定継続;
}
// データを再配置 $newfp.=$farray[$Tmpa].\r\n;
}
$fp=@fopen($filename,a ) or die(ファイル $filename を書き込みモードで開くことができませんでした);//ファイルを書き込みモードで開きます @fputs($fp,$newfp) または die(ファイルの書き込みに失敗しました) );
@fclose($fp);
?>
上記のコードはファイル行の削除を示していますが、注意深く見ると、実際には他のファイル操作に関連するリマインダーが表示されます~
質問: 存在しないファイルを開こうとすると、どうすればファイルを削除できますか?パスの漏洩を避けるためにエラーが表示されます。 !
回答: ファイルを開いてエラーをブロックするメソッドの前に @ 記号を追加します。@ は、エラー メッセージをブロックするために PHP によって提供される特別な記号です。または、error_reporting(0) を前に追加することもできます。 ); ページ上のすべてのエラー メッセージの表示をブロックするために使用されます。推奨されない方法は、php.ini を変更することです (ISP を除く)。
Q: 仮想ホストを使用していますが、他のユーザーが私のデータを盗むのを防ぐにはどうすればよいですか?
回答: 制限のために ISP が php.ini の open_basedir を変更することをお勧めします。推奨されない ISP 設定は、fopen や file などのファイル操作を disable_function に追加することです。
質問: FTP 経由でログインするときに PHP を使用してこれらのファイルを削除した後、これらのファイルを削除できないのはなぜですか? ?
回答: 主に、PHP によって作成されたファイルは WEB ユーザー グループに属しているため、つまり、作成されたファイルは FTP ユーザーに属していないためです。 ! !この問題の解決策は、PHP プログラムの chmod、unlink などのメソッドを使用することです。PHP を使用してファイルを作成するときは、chmod ファイルのアクセス許可を覚えておくことをお勧めします。
質問: テキスト ファイルの使用方法
。データウェアハウスとして?一部のゲストブックやフォーラムなどはすべてこれを使用しています。
回答: 実際、これは主にファイルを使用しており、データの読み取りと分割とエクスプロードを組み合わせた典型的な例です。
Q: ファイル名を変更するにはどうすればよいですか?
回答: rename();
Q: ファイルを削除するにはどうすればよいですか?
回答: unlink(); exec(del(rm -vf) ファイル名);
注: Linux では rm -vf が使用されます。
質問: ファイルをクリアするにはどうすればよいですか?
回答: fopen(filename,w); または exec(echo '' > filename); を使用します。
Q: ファイルの内容を編集するにはどうすればよいですか?
回答: 以前、ファイルのコンテンツの削除に関する質問に回答したことを覚えています。実際、コンテンツの編集には、コンテンツの削除に基づいた変数の置換のみが必要です。上記の continue を調べて変更し、変数データを置き換えていただければ幸いです。