ホームページ  >  記事  >  バックエンド開発  >  PHP でファイルに特定のコンテンツが含まれているかどうかを確認するにはどうすればよいですか?

PHP でファイルに特定のコンテンツが含まれているかどうかを確認するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-23 18:21:42791ブラウズ

How to Check if a File Contains Specific Content in PHP?

PHP でファイルの内容を確認する方法

ファイルで特定の内容を検索することは、さまざまなプログラミング シナリオで不可欠です。このタスクは、PHP で file_get_contents() 関数を使用するか、コマンドライン ユーティリティ grep を使用して実行できます。

ファイルに指定された文字列が含まれているかどうかを確認しようとした元のコードを考えてみましょう。コードの欠陥はループ内の条件文にあり、文字列が次の場合にのみファイルを有効としてマークする正の等価性チェック if (strpos($buffer, $id) === false) を誤って使用していました。存在しません。これを修正するには、文字列の存在を適切に識別するために if (strpos($buffer, $id) !== false) に変更する必要があります。

ただし、簡単にするために、より効率的な解決策を次に示します。 file_get_contents():

<code class="php">if( strpos(file_get_contents("./uuids.txt"),$_GET['id']) !== false) {
    // do stuff
}</code>

このアプローチでは、ファイル全体をメモリにロードして文字列を検索します。これは、ファイルを 1 行ずつ読み取るよりも効率的です。

メモリ使用量が気になる場合は、ファイル全体をメモリにロードせずに grep を使用して文字列を検索することもできます。

<code class="php">if( exec('grep '.escapeshellarg($_GET['id']).' ./uuids.txt')) {
    // do stuff
}</code>

これらの方法は両方とも、指定されたファイルに指定された文字列が含まれているかどうかを効果的に判断し、次のことを行うことができます。意図したアクションを続行します。

以上がPHP でファイルに特定のコンテンツが含まれているかどうかを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。