ホームページ >バックエンド開発 >PHPチュートリアル >PHP開発におけるファイル操作に関するトラブルシューティング_PHPチュートリアル

PHP開発におけるファイル操作に関するトラブルシューティング_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:34:25790ブラウズ

はじめに:

PHP はさまざまなデータベースの操作をサポートしており、ファイル操作の操作方法も豊富です。多くの友人の現在の操作は依然としてファイル操作に基づいていますが、ファイルの操作には依然として多くの混乱と混乱があります。以下は、私が日々の執筆プロセスで遭遇したファイル操作に関する問題と、フォーラムの友人が遭遇したファイル操作に関するいくつかの問題をまとめたものです。

Q: 新しいファイルを作成するにはどうすればよいですか?

答え:

1. fopen(作成するファイル名、パラメータ)を使用し、パラメータはw、w+、a、a+にすることができます

2. exec(echo > 作成するファイル名); これはシステムメソッドを使用してファイルを作成することです

touch Linux コマンドを使用して作成することもできます。

Q: ファイルを作成できないのはなぜですか?

答え:

1. fopen を使用してファイルを作成する場合、パラメーターは正しく使用されていますか?

2. システム権限の問題については、FTP ディレクトリに書き込み権限があるかどうかをウェブマスターに問い合わせてください

3. FTP 権限の問題では、PHP ファイルが書き込まれるファイルが存在するディレクトリに書き込み権限があることを確認する必要があります。つまり、FTP ソフトウェアにログインした後、他のグループに書き込み権限が必要です。 そうでない場合は、権限を変更して再試行してください


Q: ファイルを配列に読み取るにはどうすればよいですか?

答え: ファイル機能を使用してください

Q: すべてのファイルを読み出すにはどうすればよいですか?

答え:

1. fread($fp) を使用します。
2. PHP バージョン >=4.3.0 の場合は、file_get_contents(); を使用できます。

Q: ファイルが存在するかどうかを確認するにはどうすればよいですか?

答え: file_exists();を使用してください

もう一度質問してください: なぜ fopen() を使って判断しないのでしょうか?

答え: その理由は、fopen から返されたデータがパーミッションの問題により誤った判断につながる場合があるためです

Q: WEB ページを読むとエラーが発生するのはなぜですか?

答え: 1. WEBページを読むとき、送信パラメータが間違っている可能性があります

2. 読みたいWEBページにアクセスできることを確認してください

Q: ファイルの関連する属性を取得するにはどうすればよいですか?

回答: PHP には、filemtime()、fileowner()、filegroup()、filectime()、fileatime() などのファイル属性を取得する一連のメソッドが用意されています。詳細な使用法についてはマニュアルを参照してください。

Q: PHP でファイルを開いた後、C のようにファイルの「カーソル」を配置できますか?

答え: はい、fseek() を使用します。 Q: ファイルにアクセスするときに他の人がアクセスできないようにしたいのですが、どうすればよいですか?

答え:

1. 他の手順を使用して、ファイル操作のためのページへのユーザーのアクセスを制限できます

2. flock()を使用します。詳細なパラメータと使用方法についてはマニュアルを参照してください

Q: ファイルの最初の行を削除するか、データの行を指定するにはどうすればよいですか?

答え:

PHP にはそのような操作メソッドが用意されていませんが、これを組み合わせて使用​​できます。次のコードは、test.dat ファイル内の 3 行目のデータを削除することを示しています (test.dat ファイル内のデータは 3 つ以上あります)。行)

<?php

$filename=test.dat;//操作ファイルを定義する

$delline=3; //削除する行数

if(!file_exsits($filename)){

die(指定されたファイルが見つかりません! 操作が中断されました!); }

$farray=file($filename);// ファイルデータを配列に読み込みます
for($tmpa=0;$Tmpa if(strcmp($Tmpa+1,$delline)==0){
//削除された行を特定します
続きます
}
//再編成されたデータ
$newfp.=$farray[$Tmpa].rn; }
$fp=@fopen($filename,a) または die(ファイル $filename を書き込みモードで開くことができませんでした);//ファイルを書き込みモードで開きます
@fputs($fp,$newfp) または die(ファイルの書き込みに失敗しました); @fclose($fp); ?>

上記のコードは、ファイル行の削除を示していますが、注意深く見ると、他のファイル操作に関連するリマインダーも表示されます~


Q: 存在しないファイルを開こうとしたとき、パスの漏洩を避けるためにエラーが表示されないようにするにはどうすればよいですか。 !


答え: エラーをブロックするには、ファイルを開くメソッドの前に @ 記号を追加します。@ は、エラー メッセージをブロックするために PHP によって提供される特別な記号です。または、error_reporting(() を追加することもできます。 0); を使用して、ページ上のすべてのエラー メッセージの表示をブロックします。推奨されない方法は、php.ini (ISP を除く) です。

Q: 仮想ホストを使用していますが、他のユーザーが私のデータを盗むのを防ぐにはどうすればよいですか?

回答: 制限のために ISP が php.ini の open_basedir を変更することをお勧めします。推奨されない ISP 設定は、fopen や file などのファイル操作を disable_function に追加することです。

Q: PHPで作成したファイルを削除するためにFTPでログインすると削除できないのはなぜですか? ?

答え: 主に、PHP によって作成されたファイルは WEB ユーザー グループに属しているため、つまり、作成されたファイルは FTP ユーザーに属していないためです。 ! !この問題の解決策は、PHP プログラムの chmod や unlink などを使用することです。PHP を使用してファイルを作成するときは、必ず chmod ファイルのアクセス許可を設定することをお勧めします。推奨値は 777 です。

Q: テキスト ファイルをデータ ウェアハウスとして使用するにはどうすればよいですか?一部のゲストブックやフォーラムなどはすべてこれを使用しています。

回答: 実際、これは主にファイルを使用し、データの読み取りと分割とエクスプロードを組み合わせた典型的な例です。

Q: ファイル名を変更するにはどうすればよいですか?

答え: rename();

Q: ファイルを削除するにはどうすればよいですか?

答え: unlink(); exec(del(rm -vf) ファイル名);

注: rm -vf は Linux で使用します

Q: ファイルをクリアするにはどうすればよいですか?

答え: fopen(filename,w) または exec(echo > filename); を使用します。

Q: ファイルの内容を編集するにはどうすればよいですか?

回答: ファイル コンテンツの削除に関する質問に一度回答したことを覚えています。実際、コンテンツの編集には、コンテンツの削除に基づく変数置換のみが必要です。上記の continue を調べて変更し、変数データを置き換えていただければ幸いです。

http://www.bkjia.com/PHPjc/508479.html

www.bkjia.com本当http://www.bkjia.com/PHPjc/508479.html技術記事前書き: PHP はさまざまなデータベース操作をサポートしており、ファイル操作の豊富な操作メソッドも備えています。多くの友人の現在の操作は依然としてファイル操作に基づいていますが、場合によっては...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。