String_
extends Scalar
in package
Table of Contents
Constants
- KIND_DOUBLE_QUOTED = 2
- KIND_HEREDOC = 3
- KIND_NOWDOC = 4
- KIND_SINGLE_QUOTED = 1
Properties
- $value : string
- $attributes : array<string, mixed>
- $replacements : array<string, string>
Methods
- __construct() : mixed
- Constructs a string scalar node.
- fromString() : self
- getAttribute() : mixed
- Returns the value of an attribute.
- getAttributes() : array<string, mixed>
- Returns all the attributes of this node.
- getComments() : array<string|int, Comment>
- Gets all comments directly preceding this node.
- getDocComment() : null|Doc
- Gets the doc comment of the node.
- getEndFilePos() : int
- Gets the file offset of the last character that is part of this node.
- getEndLine() : int
- Gets the line the node ended in.
- getEndTokenPos() : int
- Gets the token offset of the last token that is part of this node.
- getLine() : int
- Gets line the node started in (alias of getStartLine).
- getStartFilePos() : int
- Gets the file offset of the first character that is part of this node.
- getStartLine() : int
- Gets line the node started in.
- getStartTokenPos() : int
- Gets the token offset of the first token that is part of this node.
- getSubNodeNames() : array<string|int, string>
- Gets the names of the sub nodes.
- getType() : string
- Gets the type of the node.
- hasAttribute() : bool
- Returns whether an attribute exists.
- jsonSerialize() : array<string, mixed>
- setAttribute() : void
- Sets an attribute on a node.
- setAttributes() : void
- Replaces all the attributes of this node.
- setDocComment() : void
- Sets the doc comment of the node.
- codePointToUtf8() : string
- Converts a Unicode code point to its UTF-8 encoded representation.
Constants
KIND_DOUBLE_QUOTED
public
mixed
KIND_DOUBLE_QUOTED
= 2
KIND_HEREDOC
public
mixed
KIND_HEREDOC
= 3
KIND_NOWDOC
public
mixed
KIND_NOWDOC
= 4
KIND_SINGLE_QUOTED
public
mixed
KIND_SINGLE_QUOTED
= 1
Properties
$value
public
string
$value
String value
$attributes
protected
array<string, mixed>
$attributes
Attributes
$replacements
protected
static array<string, string>
$replacements
= ['\\' => '\\', '$' => '$', 'n' => "\n", 'r' => "\r", 't' => "\t", 'f' => "\f", 'v' => "\v", 'e' => "\x1b"]
Escaped character to its decoded value
Methods
__construct()
Constructs a string scalar node.
public
__construct(string $value[, array<string, mixed> $attributes = [] ]) : mixed
Parameters
- $value : string
-
Value of the string
- $attributes : array<string, mixed> = []
-
Additional attributes
fromString()
public
static fromString(string $str[, array<string, mixed> $attributes = [] ][, bool $parseUnicodeEscape = true ]) : self
Parameters
- $str : string
- $attributes : array<string, mixed> = []
- $parseUnicodeEscape : bool = true
-
Whether to parse PHP 7 \u escapes
Return values
selfgetAttribute()
Returns the value of an attribute.
public
getAttribute(string $key[, mixed $default = null ]) : mixed
Parameters
- $key : string
- $default : mixed = null
getAttributes()
Returns all the attributes of this node.
public
getAttributes() : array<string, mixed>
Return values
array<string, mixed>getComments()
Gets all comments directly preceding this node.
public
getComments() : array<string|int, Comment>
The comments are also available through the "comments" attribute.
Return values
array<string|int, Comment>getDocComment()
Gets the doc comment of the node.
public
getDocComment() : null|Doc
Return values
null|Doc —Doc comment object or null
getEndFilePos()
Gets the file offset of the last character that is part of this node.
public
getEndFilePos() : int
Requires the 'endFilePos' attribute to be enabled in the lexer (DISABLED by default).
Return values
int —File end position (or -1 if not available)
getEndLine()
Gets the line the node ended in.
public
getEndLine() : int
Requires the 'endLine' attribute to be enabled in the lexer (enabled by default).
Tags
Return values
int —End line (or -1 if not available)
getEndTokenPos()
Gets the token offset of the last token that is part of this node.
public
getEndTokenPos() : int
The offset is an index into the array returned by Lexer::getTokens().
Requires the 'endTokenPos' attribute to be enabled in the lexer (DISABLED by default).
Return values
int —Token end position (or -1 if not available)
getLine()
Gets line the node started in (alias of getStartLine).
public
getLine() : int
Tags
Return values
int —Start line (or -1 if not available)
getStartFilePos()
Gets the file offset of the first character that is part of this node.
public
getStartFilePos() : int
Requires the 'startFilePos' attribute to be enabled in the lexer (DISABLED by default).
Return values
int —File start position (or -1 if not available)
getStartLine()
Gets line the node started in.
public
getStartLine() : int
Requires the 'startLine' attribute to be enabled in the lexer (enabled by default).
Tags
Return values
int —Start line (or -1 if not available)
getStartTokenPos()
Gets the token offset of the first token that is part of this node.
public
getStartTokenPos() : int
The offset is an index into the array returned by Lexer::getTokens().
Requires the 'startTokenPos' attribute to be enabled in the lexer (DISABLED by default).
Return values
int —Token start position (or -1 if not available)
getSubNodeNames()
Gets the names of the sub nodes.
public
getSubNodeNames() : array<string|int, string>
Return values
array<string|int, string> —Names of sub nodes
getType()
Gets the type of the node.
public
getType() : string
Return values
string —Type of the node
hasAttribute()
Returns whether an attribute exists.
public
hasAttribute(string $key) : bool
Parameters
- $key : string
Return values
booljsonSerialize()
public
jsonSerialize() : array<string, mixed>
Return values
array<string, mixed>setAttribute()
Sets an attribute on a node.
public
setAttribute(string $key, mixed $value) : void
Parameters
- $key : string
- $value : mixed
setAttributes()
Replaces all the attributes of this node.
public
setAttributes(array<string|int, mixed> $attributes) : void
Parameters
- $attributes : array<string|int, mixed>
setDocComment()
Sets the doc comment of the node.
public
setDocComment(Doc $docComment) : void
This will either replace an existing doc comment or add it to the comments array.
Parameters
- $docComment : Doc
-
Doc comment to set
codePointToUtf8()
Converts a Unicode code point to its UTF-8 encoded representation.
private
static codePointToUtf8(int $num) : string
Parameters
- $num : int
-
Code point
Return values
string —UTF-8 representation of code point