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