AbstractString
    
            
            in package
            
        
    
            
            implements
                            Stringable,                             JsonSerializable                    
    
    
AbstractYes
Represents a string of abstract characters.
Unicode defines 3 types of "characters" (bytes, code points and grapheme clusters). This class is the abstract type to use as a type-hint when the logic you want to implement doesn't care about the exact variant it deals with.
Tags
Table of Contents
Interfaces
- Stringable
 - JsonSerializable
 
Constants
- PREG_OFFSET_CAPTURE = \PREG_OFFSET_CAPTURE
 - PREG_PATTERN_ORDER = \PREG_PATTERN_ORDER
 - PREG_SET_ORDER = \PREG_SET_ORDER
 - PREG_SPLIT = 0
 - PREG_SPLIT_DELIM_CAPTURE = \PREG_SPLIT_DELIM_CAPTURE
 - PREG_SPLIT_NO_EMPTY = \PREG_SPLIT_NO_EMPTY
 - PREG_SPLIT_OFFSET_CAPTURE = \PREG_SPLIT_OFFSET_CAPTURE
 - PREG_UNMATCHED_AS_NULL = \PREG_UNMATCHED_AS_NULL
 
Properties
- $ignoreCase : bool|null
 - $string : string
 
Methods
- __clone() : mixed
 - __construct() : mixed
 - __sleep() : array<string|int, mixed>
 - __toString() : string
 - after() : static
 - afterLast() : static
 - append() : static
 - before() : static
 - beforeLast() : static
 - bytesAt() : array<string|int, int>
 - camel() : static
 - chunk() : array<string|int, static>
 - collapseWhitespace() : static
 - containsAny() : bool
 - endsWith() : bool
 - ensureEnd() : static
 - ensureStart() : static
 - equalsTo() : bool
 - folded() : static
 - ignoreCase() : static
 - indexOf() : int|null
 - indexOfLast() : int|null
 - isEmpty() : bool
 - join() : static
 - jsonSerialize() : string
 - kebab() : static
 - length() : int
 - lower() : static
 - match() : array<string|int, mixed>
 - Matches the string using a regular expression.
 - padBoth() : static
 - padEnd() : static
 - padStart() : static
 - prepend() : static
 - repeat() : static
 - replace() : static
 - replaceMatches() : static
 - reverse() : static
 - slice() : static
 - snake() : static
 - splice() : static
 - split() : array<string|int, static>
 - startsWith() : bool
 - title() : static
 - toByteString() : ByteString
 - toCodePointString() : CodePointString
 - toString() : string
 - toUnicodeString() : UnicodeString
 - trim() : static
 - trimEnd() : static
 - trimPrefix() : static
 - trimStart() : static
 - trimSuffix() : static
 - truncate() : static
 - unwrap() : array<string|int, string>|array<string|int, mixed>
 - Unwraps instances of AbstractString back to strings.
 - upper() : static
 - width() : int
 - Returns the printable length on a terminal.
 - wordwrap() : static
 - wrap() : array<string|int, static>|array<string|int, mixed>
 - Wraps (and normalizes) strings in instances of AbstractString.
 
Constants
PREG_OFFSET_CAPTURE
    public
        mixed
    PREG_OFFSET_CAPTURE
    = \PREG_OFFSET_CAPTURE
    
    
    
    
PREG_PATTERN_ORDER
    public
        mixed
    PREG_PATTERN_ORDER
    = \PREG_PATTERN_ORDER
    
    
    
    
PREG_SET_ORDER
    public
        mixed
    PREG_SET_ORDER
    = \PREG_SET_ORDER
    
    
    
    
PREG_SPLIT
    public
        mixed
    PREG_SPLIT
    = 0
    
    
    
    
PREG_SPLIT_DELIM_CAPTURE
    public
        mixed
    PREG_SPLIT_DELIM_CAPTURE
    = \PREG_SPLIT_DELIM_CAPTURE
    
    
    
    
PREG_SPLIT_NO_EMPTY
    public
        mixed
    PREG_SPLIT_NO_EMPTY
    = \PREG_SPLIT_NO_EMPTY
    
    
    
    
PREG_SPLIT_OFFSET_CAPTURE
    public
        mixed
    PREG_SPLIT_OFFSET_CAPTURE
    = \PREG_SPLIT_OFFSET_CAPTURE
    
    
    
    
PREG_UNMATCHED_AS_NULL
    public
        mixed
    PREG_UNMATCHED_AS_NULL
    = \PREG_UNMATCHED_AS_NULL
    
    
    
    
Properties
$ignoreCase
    protected
        bool|null
    $ignoreCase
     = false
    
    
    
    
$string
    protected
        string
    $string
     = ''
    
    
    
    
Methods
__clone()
    public
                    __clone() : mixed
    __construct()
    public
    abstract                __construct([string $string = '' ]) : mixed
    Parameters
- $string : string = ''
 
__sleep()
    public
                    __sleep() : array<string|int, mixed>
    Return values
array<string|int, mixed>__toString()
    public
                    __toString() : string
    Return values
stringafter()
    public
                    after(string|array<string|int, string> $needle[, bool $includeNeedle = false ][, int $offset = 0 ]) : static
    Parameters
- $needle : string|array<string|int, string>
 - $includeNeedle : bool = false
 - $offset : int = 0
 
Return values
staticafterLast()
    public
                    afterLast(string|array<string|int, string> $needle[, bool $includeNeedle = false ][, int $offset = 0 ]) : static
    Parameters
- $needle : string|array<string|int, string>
 - $includeNeedle : bool = false
 - $offset : int = 0
 
Return values
staticappend()
    public
    abstract                append(string ...$suffix) : static
    Parameters
- $suffix : string
 
Return values
staticbefore()
    public
                    before(string|array<string|int, string> $needle[, bool $includeNeedle = false ][, int $offset = 0 ]) : static
    Parameters
- $needle : string|array<string|int, string>
 - $includeNeedle : bool = false
 - $offset : int = 0
 
Return values
staticbeforeLast()
    public
                    beforeLast(string|array<string|int, string> $needle[, bool $includeNeedle = false ][, int $offset = 0 ]) : static
    Parameters
- $needle : string|array<string|int, string>
 - $includeNeedle : bool = false
 - $offset : int = 0
 
Return values
staticbytesAt()
    public
                    bytesAt(int $offset) : array<string|int, int>
    Parameters
- $offset : int
 
Return values
array<string|int, int>camel()
    public
    abstract                camel() : static
    Return values
staticchunk()
    public
    abstract                chunk([int $length = 1 ]) : array<string|int, static>
    Parameters
- $length : int = 1
 
Return values
array<string|int, static>collapseWhitespace()
    public
                    collapseWhitespace() : static
    Return values
staticcontainsAny()
    public
                    containsAny(string|array<string|int, string> $needle) : bool
    Parameters
- $needle : string|array<string|int, string>
 
Return values
boolendsWith()
    public
                    endsWith(string|array<string|int, string> $suffix) : bool
    Parameters
- $suffix : string|array<string|int, string>
 
Return values
boolensureEnd()
    public
                    ensureEnd(string $suffix) : static
    Parameters
- $suffix : string
 
Return values
staticensureStart()
    public
                    ensureStart(string $prefix) : static
    Parameters
- $prefix : string
 
Return values
staticequalsTo()
    public
                    equalsTo(string|array<string|int, string> $string) : bool
    Parameters
- $string : string|array<string|int, string>
 
Return values
boolfolded()
    public
    abstract                folded() : static
    Return values
staticignoreCase()
    public
                    ignoreCase() : static
    Return values
staticindexOf()
    public
                    indexOf(string|array<string|int, string> $needle[, int $offset = 0 ]) : int|null
    Parameters
- $needle : string|array<string|int, string>
 - $offset : int = 0
 
Return values
int|nullindexOfLast()
    public
                    indexOfLast(string|array<string|int, string> $needle[, int $offset = 0 ]) : int|null
    Parameters
- $needle : string|array<string|int, string>
 - $offset : int = 0
 
Return values
int|nullisEmpty()
    public
                    isEmpty() : bool
    Return values
booljoin()
    public
    abstract                join(array<string|int, mixed> $strings[, string|null $lastGlue = null ]) : static
    Parameters
- $strings : array<string|int, mixed>
 - $lastGlue : string|null = null
 
Return values
staticjsonSerialize()
    public
                    jsonSerialize() : string
    Return values
stringkebab()
    public
                    kebab() : static
    Return values
staticlength()
    public
    abstract                length() : int
    Return values
intlower()
    public
    abstract                lower() : static
    Return values
staticmatch()
Matches the string using a regular expression.
    public
    abstract                match(string $regexp[, int $flags = 0 ][, int $offset = 0 ]) : array<string|int, mixed>
    Pass PREG_PATTERN_ORDER or PREG_SET_ORDER as $flags to get all occurrences matching the regular expression.
Parameters
- $regexp : string
 - $flags : int = 0
 - $offset : int = 0
 
Return values
array<string|int, mixed> —All matches in a multi-dimensional array ordered according to flags
padBoth()
    public
    abstract                padBoth(int $length[, string $padStr = ' ' ]) : static
    Parameters
- $length : int
 - $padStr : string = ' '
 
Return values
staticpadEnd()
    public
    abstract                padEnd(int $length[, string $padStr = ' ' ]) : static
    Parameters
- $length : int
 - $padStr : string = ' '
 
Return values
staticpadStart()
    public
    abstract                padStart(int $length[, string $padStr = ' ' ]) : static
    Parameters
- $length : int
 - $padStr : string = ' '
 
Return values
staticprepend()
    public
    abstract                prepend(string ...$prefix) : static
    Parameters
- $prefix : string
 
Return values
staticrepeat()
    public
                    repeat(int $multiplier) : static
    Parameters
- $multiplier : int
 
Return values
staticreplace()
    public
    abstract                replace(string $from, string $to) : static
    Parameters
- $from : string
 - $to : string
 
Return values
staticreplaceMatches()
    public
    abstract                replaceMatches(string $fromRegexp, string|callable $to) : static
    Parameters
- $fromRegexp : string
 - $to : string|callable
 
Return values
staticreverse()
    public
    abstract                reverse() : static
    Return values
staticslice()
    public
    abstract                slice([int $start = 0 ][, int|null $length = null ]) : static
    Parameters
- $start : int = 0
 - $length : int|null = null
 
Return values
staticsnake()
    public
    abstract                snake() : static
    Return values
staticsplice()
    public
    abstract                splice(string $replacement[, int $start = 0 ][, int|null $length = null ]) : static
    Parameters
- $replacement : string
 - $start : int = 0
 - $length : int|null = null
 
Return values
staticsplit()
    public
                    split(string $delimiter[, int|null $limit = null ][, int|null $flags = null ]) : array<string|int, static>
    Parameters
- $delimiter : string
 - $limit : int|null = null
 - $flags : int|null = null
 
Return values
array<string|int, static>startsWith()
    public
                    startsWith(string|array<string|int, string> $prefix) : bool
    Parameters
- $prefix : string|array<string|int, string>
 
Return values
booltitle()
    public
    abstract                title([bool $allWords = false ]) : static
    Parameters
- $allWords : bool = false
 
Return values
statictoByteString()
    public
                    toByteString([string|null $toEncoding = null ]) : ByteString
    Parameters
- $toEncoding : string|null = null
 
Return values
ByteStringtoCodePointString()
    public
                    toCodePointString() : CodePointString
    Return values
CodePointStringtoString()
    public
                    toString() : string
    Return values
stringtoUnicodeString()
    public
                    toUnicodeString() : UnicodeString
    Return values
UnicodeStringtrim()
    public
    abstract                trim([string $chars = " 	
  " ]) : static
    Parameters
- $chars : string = " "
 
Return values
statictrimEnd()
    public
    abstract                trimEnd([string $chars = " 	
  " ]) : static
    Parameters
- $chars : string = " "
 
Return values
statictrimPrefix()
    public
                    trimPrefix(string|array<string|int, string> $prefix) : static
    Parameters
- $prefix : string|array<string|int, string>
 
Return values
statictrimStart()
    public
    abstract                trimStart([string $chars = " 	
  " ]) : static
    Parameters
- $chars : string = " "
 
Return values
statictrimSuffix()
    public
                    trimSuffix(string|array<string|int, string> $suffix) : static
    Parameters
- $suffix : string|array<string|int, string>
 
Return values
statictruncate()
    public
                    truncate(int $length[, string $ellipsis = '' ][, bool|TruncateMode $cut = TruncateMode::Char ]) : static
    Parameters
- $length : int
 - $ellipsis : string = ''
 - $cut : bool|TruncateMode = TruncateMode::Char
 
Return values
staticunwrap()
Unwraps instances of AbstractString back to strings.
    public
            static        unwrap(array<string|int, mixed> $values) : array<string|int, string>|array<string|int, mixed>
    Parameters
- $values : array<string|int, mixed>
 
Return values
array<string|int, string>|array<string|int, mixed>upper()
    public
    abstract                upper() : static
    Return values
staticwidth()
Returns the printable length on a terminal.
    public
    abstract                width([bool $ignoreAnsiDecoration = true ]) : int
    Parameters
- $ignoreAnsiDecoration : bool = true
 
Return values
intwordwrap()
    public
                    wordwrap([int $width = 75 ][, string $break = "
" ][, bool $cut = false ]) : static
    Parameters
- $width : int = 75
 - $break : string = " "
 - $cut : bool = false
 
Return values
staticwrap()
Wraps (and normalizes) strings in instances of AbstractString.
    public
            static        wrap(array<string|int, mixed> $values) : array<string|int, static>|array<string|int, mixed>
    Parameters
- $values : array<string|int, mixed>