fgetss

Gets line from file pointer and strip HTML tags

&warn.deprecated.function-7-3-0.removed-8-0-0;
&reftitle.description; `string` `fgetss` `resource` `handle` `int` `length` `string` `allowable_tags`

Identical to `fgets`, except that `fgetss` attempts to strip any NUL bytes, HTML and PHP tags from the text it reads. The function retains the parsing state from call to call, and as such is not equivalent to calling `strip_tags` on the return value of `fgets`.

&reftitle.parameters;

`handle`

- &fs.validfp.all;

`length`

- Length of the data to be retrieved.

`allowable_tags`

- You can use the optional third parameter to specify tags which should not be stripped. See `strip_tags` for details regarding `allowable_tags`.

&reftitle.returnvalues;

Returns a string of up to `length` - 1 bytes read from the file pointed to by `handle`, with all HTML and PHP code stripped.

If an error occurs, returns &false;.

&reftitle.examples;

### Reading a PHP file line-by-line

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

    $handle = @fopen("sample.php", "r");
    if ($handle) {
        while (!feof($handle)) {
            $buffer = fgetss($handle, 4096);
            echo $buffer;
        }
        fclose($handle);
    }
    ?>

&example.outputs.similar;

     Welcome! Today is the  of .

    Text outside of the HTML block.

&reftitle.notes; ¬e.line-endings;
&reftitle.seealso;

- `fgets`
- `fopen`
- `popen`
- `fsockopen`
- `strip_tags`
- `SplFileObject::fgetss`
- The string.strip_tags filter