ホームページ > バックエンド開発 > PHPチュートリアル > php fgets() 関数と fgetss() 関数の使用手順

php fgets() 関数と fgetss() 関数の使用手順

怪我咯
リリース: 2023-03-13 13:48:01
オリジナル
1965 人が閲覧しました

fgets — ファイル ポインタから 1 行を読み取ります

説明

string fgets ( resource $handle [, int $length ] )
ログイン後にコピー

ファイル ポインタから 1 行を読み取ります。

パラメータ

ハンドル ファイル ポインタは有効である必要があり、fopen() または fsockopen() によって正常に開かれた (fclose() によって閉じられていない) ファイルを指している必要があります。

length handle が指すファイルから 1 行を読み取り、最大長 - 1 バイトの string を返します。改行文字 (戻り値に含まれる)、EOF、または長さ - 1 バイト (いずれか最初に発生した方) が読み取られたときに停止します。長さが指定されていない場合、デフォルトは 1K、つまり 1024 バイトになります。

注:

PHP 4.3 以降、length が省略された場合、行の長さは 1024 とみなされ、データは行の終わりまでストリームから読み取られ続けます。ファイル内のほとんどの行が 8KB を超える場合は、スクリプトで最大行長を指定すると、リソースをより効率的に利用できます。

戻り値

ポインタハンドルが指すファイルから length - 1 バイトを読み取った後の文字列を返します。 ファイル ポインタにデータがなくなった場合は FALSE を返します。

エラーが発生した場合はFALSEを返します。

fgets() 関数の例、ファイルを 1 行ずつ読み取ります 、コードは次のとおりです

<?php
$handle  = @ fopen ( "/tmp/inputfile.txt" ,  "r" );
if ( $handle ) {
    while (( $buffer  =  fgets ( $handle ,  4096 )) !==  false ) {
        echo  $buffer ;
    }
    if (! feof ( $handle )) {
        echo  "Error: unexpected fgets() fail\n" ;
    }
     fclose ( $handle );
}
?>
ログイン後にコピー

getss - ファイル ポインタから 1 行を読み取り、HTML タグをフィルタリングします

説明

string fgetss ( resource $handle [, int $length [, string $allowable_tags ]] )
ログイン後にコピー

は同じですfgets() と同様に、fgetss() のみが、読み取られるテキストから HTML および PHP マークアップを除去しようとします。

パラメータ

ハンドル

ファイル ポインタは有効である必要があり、fopen() または fsockopen() によって正常に開かれた (fclose() によって閉じられていない) ファイルを指している必要があります。

length

この長さのデータを取得します。

allowable_tags

オプションの 3 番目のパラメータを使用して、削除しないタグを指定できます。

戻り値

長さ - ハンドルが指すファイルから 1 バイトの文字を読み取り、すべての HTML および PHP コードをフィルターで除外します。

getss()関数の例、PHPファイルを1行ずつ読み込み、コードは次のとおりです

<?php
$str  = <<<EOD
<html><body>
 <p>Welcome! Today is the <?php echo(date(&#39;jS&#39;)); ?> of <?= date(&#39;F&#39;); ?>.</p>
</body></html>
Text outside of the HTML block.
EOD;
file_put_contents ( &#39;sample.php&#39; ,  $str );

$handle  = @ fopen ( "sample.php" ,  "r" );
if ( $handle ) {
    while (! feof ( $handle )) {
         $buffer  =  fgetss ( $handle ,  4096 );
        echo  $buffer ;
    }
     fclose ( $handle );
}
?>
ログイン後にコピー

出力結果:

Welcome! Today is the  of .Text outside of the HTML block.
ログイン後にコピー

以上がphp fgets() 関数と fgetss() 関数の使用手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート