Documentation

StringInputStream
in package
implements InputStream

since 2.4, to remove in 3.0. Use a string in the scanner instead.

Table of Contents

Interfaces

InputStream
Interface for stream readers.

Properties

$errors  : mixed
Parse errors.
$char  : mixed
The current integer byte position we are in $data.
$data  : mixed
The string data we're parsing.
$EOF  : mixed
Length of $data; when $char === $data, we are at the end-of-file.

Methods

__construct()  : mixed
Create a new InputStream wrapper.
__toString()  : mixed
charsUntil()  : mixed
Read to a particular match (or until $max bytes are consumed).
charsWhile()  : string
Returns the string so long as $bytes matches.
columnOffset()  : int
Returns the current column of the current line that the tokenizer is at.
current()  : string
Get the current character.
currentLine()  : mixed
Returns the current line that the tokenizer is at.
getColumnOffset()  : mixed
getCurrentLine()  : mixed
key()  : mixed
next()  : mixed
Advance the pointer.
peek()  : mixed
Look ahead without moving cursor.
remainingChars()  : string
Get all characters until EOF.
rewind()  : mixed
Rewind to the start of the string.
unconsume()  : mixed
Unconsume characters.
valid()  : bool
Is the current pointer location valid.
replaceLinefeeds()  : mixed
Replace linefeed characters according to the spec.

Properties

$char

The current integer byte position we are in $data.

private mixed $char

$EOF

Length of $data; when $char === $data, we are at the end-of-file.

private mixed $EOF

Methods

__construct()

Create a new InputStream wrapper.

public __construct(string $data[, string $encoding = 'UTF-8' ][, string $debug = '' ]) : mixed
Parameters
$data : string

Data to parse.

$encoding : string = 'UTF-8'

The encoding to use for the data.

$debug : string = ''

A fprintf format to use to echo the data on stdout.

charsUntil()

Read to a particular match (or until $max bytes are consumed).

public charsUntil(string $bytes[, int $max = null ]) : mixed

This operates on byte sequences, not characters.

Matches as far as possible until we reach a certain set of bytes and returns the matched substring.

Parameters
$bytes : string

Bytes to match.

$max : int = null

Maximum number of bytes to scan.

Return values
mixed —

Index or false if no match is found. You should use strong equality when checking the result, since index could be 0.

charsWhile()

Returns the string so long as $bytes matches.

public charsWhile(string $bytes[, int $max = null ]) : string

Matches as far as possible with a certain set of bytes and returns the matched substring.

Parameters
$bytes : string

A mask of bytes to match. If ANY byte in this mask matches the current char, the pointer advances and the char is part of the substring.

$max : int = null

The max number of chars to read.

Return values
string

columnOffset()

Returns the current column of the current line that the tokenizer is at.

public columnOffset() : int

Newlines are column 0. The first char after a newline is column 1.

Return values
int —

The column number.

current()

Get the current character.

public current() : string
Attributes
#[ReturnTypeWillChange]
Return values
string —

The current character.

currentLine()

Returns the current line that the tokenizer is at.

public currentLine() : mixed

next()

Advance the pointer.

public next() : mixed

This is part of the Iterator interface.

Attributes
#[ReturnTypeWillChange]

remainingChars()

Get all characters until EOF.

public remainingChars() : string

This reads to the end of the file, and sets the read marker at the end of the file.

Note this performs bounds checking.

Return values
string —

Returns the remaining text. If called when the InputStream is already exhausted, it returns an empty string.

rewind()

Rewind to the start of the string.

public rewind() : mixed
Attributes
#[ReturnTypeWillChange]

unconsume()

Unconsume characters.

public unconsume([int $howMany = 1 ]) : mixed
Parameters
$howMany : int = 1

The number of characters to unconsume.

valid()

Is the current pointer location valid.

public valid() : bool
Attributes
#[ReturnTypeWillChange]
Return values
bool —

Whether the current pointer location is valid.

replaceLinefeeds()

Replace linefeed characters according to the spec.

protected replaceLinefeeds(mixed $data) : mixed
Parameters
$data : mixed

        
On this page

Search results