ホームページ  >  記事  >  バックエンド開発  >  PHP コード - テキストの改行を読む際の小さな問題の解決策_PHP チュートリアル

PHP コード - テキストの改行を読む際の小さな問題の解決策_PHP チュートリアル

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

まずは効果を実証してください

txt のテキストを読むと、改行文字の存在により最後に 2 文字が追加されることがわかります。Windows の改行文字の表現方法は rn

です。

たとえば、文字列を txt ファイルに書き込みます:

$f1="t1.txt";
$str="123";
$fp1=fopen($f1,"w");
fwrite($fp1,$str);
fclose($fp1);
----------------------------------------

表示結果:

123

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

次に、ファイルへの書き込みを 2 回テストします

$f1="t1.txt";
$str="123";
$fp1=fopen($f1,"w");
fwrite($fp1,$str.$str);
fclose($fp1);

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

表示結果:

123123

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

ここに書いたとき、123を書いた後に改行したい場合は、改行文字を追加する必要があります: rn

テストコード:

$str="123";
$fp1=fopen($f1,"w");
fwrite($fp1,$str."rn".$str."rn");
fclose($fp1);

-----------------------------------------------結果を表示

123

123

ここは空行の開始点です。見えませんが、ここをクリックして文字列を書き込むことができます。

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

テキスト ファイルを処理するとき、改行がある限り、改行文字が存在します。

そのため、文字列を 1 行使用する前にフィルタリングする必要があります。

テストコード:

次のようなファイル形式で読み取ります:

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

123

1234

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

ファイル

$f1="t1.txt";
$str="123";
$fp1=fopen($f1,"w");
fwrite($fp1,$str."rn".$str."rn");
fclose($fp1);

$f1="t1.txt";
$fp1=fopen($f1,"r");
while(!feof($fp1)){
$buffer1=fgets($fp1);
エコー strlen($buffer1);
エコー "
";
}
fclose($fp1);

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

表示される結果:

5
5
0

文字列 123 の長さは 3 ではなく 5 であることが証明されています。これは改行文字の存在が原因であり、読み取りに基づいて最後の 2 文字を削除できます。

コード:

$f1="t1.txt";
$str="123";
$fp1=fopen($f1,"w");
fwrite($fp1,$str."rn".$str."rn");
fclose($fp1);

$f1="t1.txt";
$fp1=fopen($f1,"r");
while(!feof($fp1)){
$buffer1=fgets($fp1);
//最初の保守的な方法は、まずこの時点で取得された文字列の長さを計算し、次に最初の文字から最後から 2 番目の文字までをインターセプトして、必要な文字列を取得することです。
$buffer1_a=substr($buffer1,0,strlen($buffer1)-2);
// 2 番目の方法は、substr 関数の特殊性を直接使用して、0 から -2 までの文字列を直接インターセプトする方法です
$buffer1_b=substr($buffer1,0,-2);
}
fclose($fp1);

このようにして、コードを使用して目的の文字列を正常に読み取ることができます


cyuyan112233さんのコラムより抜粋

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478228.html技術記事最初にその効果を示します。txt テキストを読むと、改行文字が存在するため、最後にさらに 2 文字あることがわかります。たとえば、we. .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。