ScalarFunctionChain implements ScalarFunction
Interfaces
Methods
- and() : All
- andNot() : All
- arrayFilter() : ArrayFilter
- Filters an array by removing all elements that matches passed value.
- arrayGet() : ArrayGet
- arrayGetCollection() : ArrayGetCollection
- arrayGetCollectionFirst() : ArrayGetCollection
- arrayKeep() : ArrayKeep
- Filters an array by keeping only elements that matches passed value.
- arrayKeys() : ArrayKeys
- Returns all keys from an array, ignoring the values.
- arrayMerge() : ArrayMerge
- arrayMergeCollection() : ArrayMergeCollection
- arrayPathExists() : ArrayPathExists
- arrayReverse() : ArrayReverse
- arraySort() : ArraySort
- arrayValues() : ArrayValues
- Returns all values from an array, ignoring the keys.
- ascii() : Ascii
- between() : Between
- call() : CallUserFunc
- capitalize() : Capitalize
- cast() : Cast
- coalesce() : Coalesce
- concat() : Concat
- concatWithSeparator() : ConcatWithSeparator
- contains() : Contains
- dateFormat() : DateTimeFormat
- dateTimeFormat() : DateTimeFormat
- divide() : Divide
- domElementAttribute() : DOMElementAttributeValue
- domElementAttributesCount() : DOMElementAttributesCount
- domElementAttributeValue() : DOMElementAttributeValue
- domElementValue() : DOMElementValue
- endsWith() : EndsWith
- equals() : Equals
- exists() : Exists
- expand() : ArrayExpand
- Expands each value into entry, if there are more than one value, multiple rows will be created.
- greaterThan() : GreaterThan
- greaterThanEqual() : GreaterThanEqual
- hash() : Hash
- indexOf() : IndexOf
- Returns the index of given $needle in string.
- isEven() : Equals
- isFalse() : Same
- isIn() : IsIn
- isNotNull() : IsNotNull
- isNotNumeric() : IsNotNumeric
- isNull() : IsNull
- isNumeric() : IsNumeric
- isOdd() : NotEquals
- isTrue() : Same
- isType() : IsType
- isUtf8() : IsUtf8
- Check string is utf8 and returns true or false.
- jsonDecode() : JsonDecode
- jsonEncode() : JsonEncode
- lessThan() : LessThan
- lessThanEqual() : LessThanEqual
- literal() : Literal
- lower() : ToLower
- minus() : Minus
- mod() : Mod
- modifyDateTime() : ModifyDateTime
- multiply() : Multiply
- notEquals() : NotEquals
- notSame() : NotSame
- numberFormat() : NumberFormat
- onEach() : OnEach
- Execute a scalar function on each element of an array/list/map/structure entry.
- or() : Any
- orNot() : Any
- plus() : Plus
- power() : Power
- regex() : Regex
- regexAll() : RegexAll
- regexMatch() : RegexMatch
- regexMatchAll() : RegexMatchAll
- regexReplace() : RegexReplace
- round() : Round
- same() : Same
- sanitize() : Sanitize
- size() : Size
- slug() : Slug
- split() : Split
- sprintf() : Sprintf
- startsWith() : StartsWith
- stringAfter() : StringAfter
- Returns the contents found after the first occurrence of the given string.
- stringAfterLast() : StringAfterLast
- Returns the contents found after the last occurrence of the given string.
- stringBefore() : StringBefore
- Returns the contents found before the first occurrence of the given string.
- stringBeforeLast() : StringBeforeLast
- Returns the contents found before the last occurrence of the given string.
- stringFold() : StringFold
- Returns a string that you can use in case-insensitive comparisons.
- stringStyle() : StringStyle
- Covert string to a style from enum list, passed in parameter.
- stringTitle() : StringTitle
- Changes all graphemes/code points to "title case".
- strPad() : StrPad
- strPadBoth() : StrPad
- strPadLeft() : StrPad
- strPadRight() : StrPad
- strReplace() : StrReplace
- toDate() : ToDate
- toDateTime() : ToDateTime
- trim() : Trim
- unpack() : ArrayUnpack
- upper() : ToUpper
- xpath() : XPath
Methods
and()
public
and(ScalarFunction $function) : All
Parameters
- $function : ScalarFunction
Return values
AllandNot()
public
andNot(ScalarFunction $function) : All
Parameters
- $function : ScalarFunction
Return values
AllarrayFilter()
Filters an array by removing all elements that matches passed value.
public
arrayFilter(mixed $value) : ArrayFilter
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure.
Parameters
- $value : mixed
Return values
ArrayFilterarrayGet()
public
arrayGet(ScalarFunction|string $path) : ArrayGet
Parameters
- $path : ScalarFunction|string
Return values
ArrayGetarrayGetCollection()
public
arrayGetCollection(array<string|int, mixed> $keys) : ArrayGetCollection
Parameters
- $keys : array<string|int, mixed>
Return values
ArrayGetCollectionarrayGetCollectionFirst()
public
arrayGetCollectionFirst(string ...$keys) : ArrayGetCollection
Parameters
- $keys : string
Return values
ArrayGetCollectionarrayKeep()
Filters an array by keeping only elements that matches passed value.
public
arrayKeep(mixed $value) : ArrayKeep
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure.
Parameters
- $value : mixed
Return values
ArrayKeeparrayKeys()
Returns all keys from an array, ignoring the values.
public
arrayKeys() : ArrayKeys
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure.
Return values
ArrayKeysarrayMerge()
public
arrayMerge(array<string|int, mixed> $ref) : ArrayMerge
Parameters
- $ref : array<string|int, mixed>
Return values
ArrayMergearrayMergeCollection()
public
arrayMergeCollection() : ArrayMergeCollection
Return values
ArrayMergeCollectionarrayPathExists()
public
arrayPathExists(ScalarFunction|string $path) : ArrayPathExists
Parameters
- $path : ScalarFunction|string
Return values
ArrayPathExistsarrayReverse()
public
arrayReverse([ScalarFunction|bool $preserveKeys = false ]) : ArrayReverse
Parameters
- $preserveKeys : ScalarFunction|bool = false
Return values
ArrayReversearraySort()
public
arraySort([ScalarFunction|Sort|null $sortFunction = null ][, ScalarFunction|int|null $flags = null ][, ScalarFunction|bool $recursive = true ]) : ArraySort
Parameters
- $sortFunction : ScalarFunction|Sort|null = null
- $flags : ScalarFunction|int|null = null
- $recursive : ScalarFunction|bool = true
Return values
ArraySortarrayValues()
Returns all values from an array, ignoring the keys.
public
arrayValues() : ArrayValues
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure.
Return values
ArrayValuesascii()
public
ascii() : Ascii
Return values
Asciibetween()
public
between(mixed|ScalarFunction $lowerBoundRef, mixed|ScalarFunction $upperBoundRef[, Boundary|ScalarFunction $boundary = Boundary::LEFT_INCLUSIVE ]) : Between
Parameters
- $lowerBoundRef : mixed|ScalarFunction
- $upperBoundRef : mixed|ScalarFunction
- $boundary : Boundary|ScalarFunction = Boundary::LEFT_INCLUSIVE
Return values
Betweencall()
public
call(ScalarFunction|callable $callable[, array<string|int, mixed> $arguments = [] ][, string|int $refAlias = 0 ][, Type<string|int, mixed> $returnType = null ]) : CallUserFunc
Parameters
- $callable : ScalarFunction|callable
- $arguments : array<string|int, mixed> = []
- $refAlias : string|int = 0
- $returnType : Type<string|int, mixed> = null
Return values
CallUserFunccapitalize()
public
capitalize() : Capitalize
Return values
Capitalizecast()
public
cast(string|Type<string|int, mixed> $type) : Cast
Parameters
- $type : string|Type<string|int, mixed>
Return values
Castcoalesce()
public
coalesce(ScalarFunction ...$params) : Coalesce
Parameters
- $params : ScalarFunction
Return values
Coalesceconcat()
public
concat(ScalarFunction|string ...$params) : Concat
Parameters
- $params : ScalarFunction|string
Return values
ConcatconcatWithSeparator()
public
concatWithSeparator(ScalarFunction|string $separator, ScalarFunction|string ...$params) : ConcatWithSeparator
Parameters
- $separator : ScalarFunction|string
- $params : ScalarFunction|string
Return values
ConcatWithSeparatorcontains()
public
contains(ScalarFunction|string $needle) : Contains
Parameters
- $needle : ScalarFunction|string
Return values
ContainsdateFormat()
public
dateFormat([string $format = 'Y-m-d' ]) : DateTimeFormat
Parameters
- $format : string = 'Y-m-d'
Return values
DateTimeFormatdateTimeFormat()
public
dateTimeFormat([string $format = 'Y-m-d H:i:s' ]) : DateTimeFormat
Parameters
- $format : string = 'Y-m-d H:i:s'
Return values
DateTimeFormatdivide()
public
divide(ScalarFunction|int|float|string $value[, ScalarFunction|int|null $scale = null ][, ScalarFunction|Rounding|null $rounding = null ]) : Divide
Parameters
- $value : ScalarFunction|int|float|string
- $scale : ScalarFunction|int|null = null
- $rounding : ScalarFunction|Rounding|null = null
Return values
DividedomElementAttribute()
public
domElementAttribute(ScalarFunction|string $attribute) : DOMElementAttributeValue
Use domElementAttributeValue instead
Parameters
- $attribute : ScalarFunction|string
Return values
DOMElementAttributeValuedomElementAttributesCount()
public
domElementAttributesCount() : DOMElementAttributesCount
Return values
DOMElementAttributesCountdomElementAttributeValue()
public
domElementAttributeValue(ScalarFunction|string $attribute) : DOMElementAttributeValue
Parameters
- $attribute : ScalarFunction|string
Return values
DOMElementAttributeValuedomElementValue()
public
domElementValue() : DOMElementValue
Return values
DOMElementValueendsWith()
public
endsWith(ScalarFunction|string $needle) : EndsWith
Parameters
- $needle : ScalarFunction|string
Return values
EndsWithequals()
public
equals(mixed $ref) : Equals
Parameters
- $ref : mixed
Return values
Equalsexists()
public
exists() : Exists
Return values
Existsexpand()
Expands each value into entry, if there are more than one value, multiple rows will be created.
public
expand([ArrayExpand $expand = ArrayExpand::VALUES ]) : ArrayExpand
Array keys are ignored, only values are used to create new rows.
Before: +--+-------------------+ |id| array| +--+-------------------+ | 1|{"a":1,"b":2,"c":3}| +--+-------------------+
After: +--+--------+ |id|expanded| +--+--------+ | 1| 1| | 1| 2| | 1| 3| +--+--------+
Parameters
- $expand : ArrayExpand = ArrayExpand::VALUES
Return values
ArrayExpandgreaterThan()
public
greaterThan(mixed $ref) : GreaterThan
Parameters
- $ref : mixed
Return values
GreaterThangreaterThanEqual()
public
greaterThanEqual(mixed $ref) : GreaterThanEqual
Parameters
- $ref : mixed
Return values
GreaterThanEqualhash()
public
hash([Algorithm $algorithm = new NativePHPHash() ]) : Hash
Parameters
- $algorithm : Algorithm = new NativePHPHash()
Return values
HashindexOf()
Returns the index of given $needle in string.
public
indexOf(ScalarFunction|string $needle[, ScalarFunction|bool $ignoreCase = false ][, ScalarFunction|int $offset = 0 ]) : IndexOf
Parameters
- $needle : ScalarFunction|string
- $ignoreCase : ScalarFunction|bool = false
- $offset : ScalarFunction|int = 0
Return values
IndexOfisEven()
public
isEven() : Equals
Return values
EqualsisFalse()
public
isFalse() : Same
Return values
SameisIn()
public
isIn(array<string|int, mixed> $haystack) : IsIn
Parameters
- $haystack : array<string|int, mixed>
Return values
IsInisNotNull()
public
isNotNull() : IsNotNull
Return values
IsNotNullisNotNumeric()
public
isNotNumeric() : IsNotNumeric
Return values
IsNotNumericisNull()
public
isNull() : IsNull
Return values
IsNullisNumeric()
public
isNumeric() : IsNumeric
Return values
IsNumericisOdd()
public
isOdd() : NotEquals
Return values
NotEqualsisTrue()
public
isTrue() : Same
Return values
SameisType()
public
isType(string|Type<string|int, mixed> ...$types) : IsType
Parameters
- $types : string|Type<string|int, mixed>
Return values
IsTypeisUtf8()
Check string is utf8 and returns true or false.
public
isUtf8() : IsUtf8
Return values
IsUtf8jsonDecode()
public
jsonDecode([ScalarFunction|int $flags = JSON_THROW_ON_ERROR ]) : JsonDecode
Parameters
- $flags : ScalarFunction|int = JSON_THROW_ON_ERROR
Return values
JsonDecodejsonEncode()
public
jsonEncode([ScalarFunction|int $flags = JSON_THROW_ON_ERROR ]) : JsonEncode
Parameters
- $flags : ScalarFunction|int = JSON_THROW_ON_ERROR
Return values
JsonEncodelessThan()
public
lessThan(mixed $ref) : LessThan
Parameters
- $ref : mixed
Return values
LessThanlessThanEqual()
public
lessThanEqual(ScalarFunction $ref) : LessThanEqual
Parameters
- $ref : ScalarFunction
Return values
LessThanEqualliteral()
public
literal(mixed $value) : Literal
Parameters
- $value : mixed
Return values
Literallower()
public
lower() : ToLower
Return values
ToLowerminus()
public
minus(ScalarFunction|int|float $ref) : Minus
Parameters
- $ref : ScalarFunction|int|float
Return values
Minusmod()
public
mod(ScalarFunction|int $value) : Mod
Parameters
- $value : ScalarFunction|int
Return values
ModmodifyDateTime()
public
modifyDateTime(string|ScalarFunction $modifier) : ModifyDateTime
Parameters
- $modifier : string|ScalarFunction
Return values
ModifyDateTimemultiply()
public
multiply(ScalarFunction|int|float $value) : Multiply
Parameters
- $value : ScalarFunction|int|float
Return values
MultiplynotEquals()
public
notEquals(mixed $value) : NotEquals
Parameters
- $value : mixed
Return values
NotEqualsnotSame()
public
notSame(mixed $value) : NotSame
Parameters
- $value : mixed
Return values
NotSamenumberFormat()
public
numberFormat([ScalarFunction|int $decimals = 2 ][, ScalarFunction|string $decimalSeparator = '.' ][, ScalarFunction|string $thousandsSeparator = ',' ]) : NumberFormat
Parameters
- $decimals : ScalarFunction|int = 2
- $decimalSeparator : ScalarFunction|string = '.'
- $thousandsSeparator : ScalarFunction|string = ','
Return values
NumberFormatonEach()
Execute a scalar function on each element of an array/list/map/structure entry.
public
onEach(ScalarFunction $function[, ScalarFunction|bool $preserveKeys = true ]) : OnEach
In order to use this function, you need to provide a reference to the "element" that will be used in the function.
Example: $df->withEntry('array', ref('array')->onEach(ref('element')->cast(type_string())))
Parameters
- $function : ScalarFunction
- $preserveKeys : ScalarFunction|bool = true
Return values
OnEachor()
public
or(ScalarFunction $function) : Any
Parameters
- $function : ScalarFunction
Return values
AnyorNot()
public
orNot(ScalarFunction $function) : Any
Parameters
- $function : ScalarFunction
Return values
Anyplus()
public
plus(ScalarFunction|int|float $ref) : Plus
Parameters
- $ref : ScalarFunction|int|float
Return values
Pluspower()
public
power(ScalarFunction|int $value) : Power
Parameters
- $value : ScalarFunction|int
Return values
Powerregex()
public
regex(ScalarFunction|string $pattern[, ScalarFunction|int $flags = 0 ][, ScalarFunction|int $offset = 0 ]) : Regex
Parameters
- $pattern : ScalarFunction|string
- $flags : ScalarFunction|int = 0
- $offset : ScalarFunction|int = 0
Return values
RegexregexAll()
public
regexAll(ScalarFunction|string $pattern[, ScalarFunction|int $flags = 0 ][, ScalarFunction|int $offset = 0 ]) : RegexAll
Parameters
- $pattern : ScalarFunction|string
- $flags : ScalarFunction|int = 0
- $offset : ScalarFunction|int = 0
Return values
RegexAllregexMatch()
public
regexMatch(ScalarFunction|string $pattern[, ScalarFunction|int $flags = 0 ][, ScalarFunction|int $offset = 0 ]) : RegexMatch
Parameters
- $pattern : ScalarFunction|string
- $flags : ScalarFunction|int = 0
- $offset : ScalarFunction|int = 0
Return values
RegexMatchregexMatchAll()
public
regexMatchAll(ScalarFunction|string $pattern[, ScalarFunction|int $flags = 0 ][, ScalarFunction|int $offset = 0 ]) : RegexMatchAll
Parameters
- $pattern : ScalarFunction|string
- $flags : ScalarFunction|int = 0
- $offset : ScalarFunction|int = 0
Return values
RegexMatchAllregexReplace()
public
regexReplace(ScalarFunction|string $pattern, ScalarFunction|string $replacement[, ScalarFunction|int|null $limit = null ]) : RegexReplace
Parameters
- $pattern : ScalarFunction|string
- $replacement : ScalarFunction|string
- $limit : ScalarFunction|int|null = null
Return values
RegexReplaceround()
public
round([ScalarFunction|int $precision = 2 ][, ScalarFunction|int $mode = PHP_ROUND_HALF_UP ]) : Round
Parameters
- $precision : ScalarFunction|int = 2
- $mode : ScalarFunction|int = PHP_ROUND_HALF_UP
Return values
Roundsame()
public
same(mixed $value) : Same
Parameters
- $value : mixed
Return values
Samesanitize()
public
sanitize([ScalarFunction|string $placeholder = '*' ][, ScalarFunction|int|null $skipCharacters = null ]) : Sanitize
Parameters
- $placeholder : ScalarFunction|string = '*'
- $skipCharacters : ScalarFunction|int|null = null
Return values
Sanitizesize()
public
size() : Size
Return values
Sizeslug()
public
slug([ScalarFunction|string $separator = '-' ][, ScalarFunction|string|null $locale = null ][, null|array<string|int, mixed> $symbolsMap = null ]) : Slug
Parameters
- $separator : ScalarFunction|string = '-'
- $locale : ScalarFunction|string|null = null
- $symbolsMap : null|array<string|int, mixed> = null
Return values
Slugsplit()
public
split(ScalarFunction|string $separator[, ScalarFunction|int $limit = PHP_INT_MAX ]) : Split
Parameters
- $separator : ScalarFunction|string
- $limit : ScalarFunction|int = PHP_INT_MAX
Return values
Splitsprintf()
public
sprintf(ScalarFunction|float|int|string|null ...$params) : Sprintf
Parameters
- $params : ScalarFunction|float|int|string|null
Return values
SprintfstartsWith()
public
startsWith(ScalarFunction|string $needle) : StartsWith
Parameters
- $needle : ScalarFunction|string
Return values
StartsWithstringAfter()
Returns the contents found after the first occurrence of the given string.
public
stringAfter(ScalarFunction|string $needle[, ScalarFunction|bool $includeNeedle = false ]) : StringAfter
Parameters
- $needle : ScalarFunction|string
- $includeNeedle : ScalarFunction|bool = false
Return values
StringAfterstringAfterLast()
Returns the contents found after the last occurrence of the given string.
public
stringAfterLast(ScalarFunction|string $needle[, ScalarFunction|bool $includeNeedle = false ]) : StringAfterLast
Parameters
- $needle : ScalarFunction|string
- $includeNeedle : ScalarFunction|bool = false
Return values
StringAfterLaststringBefore()
Returns the contents found before the first occurrence of the given string.
public
stringBefore(ScalarFunction|string $needle[, ScalarFunction|bool $includeNeedle = false ]) : StringBefore
Parameters
- $needle : ScalarFunction|string
- $includeNeedle : ScalarFunction|bool = false
Return values
StringBeforestringBeforeLast()
Returns the contents found before the last occurrence of the given string.
public
stringBeforeLast(ScalarFunction|string $needle[, ScalarFunction|bool $includeNeedle = false ]) : StringBeforeLast
Parameters
- $needle : ScalarFunction|string
- $includeNeedle : ScalarFunction|bool = false
Return values
StringBeforeLaststringFold()
Returns a string that you can use in case-insensitive comparisons.
public
stringFold() : StringFold
Return values
StringFoldstringStyle()
Covert string to a style from enum list, passed in parameter.
public
stringStyle(ScalarFunction|string|StringStyles|StringStyles $style) : StringStyle
Can be string "upper" or StringStyles::UPPER for Upper (example).
Parameters
- $style : ScalarFunction|string|StringStyles|StringStyles
Return values
StringStylestringTitle()
Changes all graphemes/code points to "title case".
public
stringTitle([ScalarFunction|bool $allWords = false ]) : StringTitle
Parameters
- $allWords : ScalarFunction|bool = false
Return values
StringTitlestrPad()
public
strPad(int $length[, string $pad_string = ' ' ][, int $type = STR_PAD_RIGHT ]) : StrPad
Parameters
- $length : int
- $pad_string : string = ' '
- $type : int = STR_PAD_RIGHT
Return values
StrPadstrPadBoth()
public
strPadBoth(int $length[, string $pad_string = ' ' ]) : StrPad
Parameters
- $length : int
- $pad_string : string = ' '
Return values
StrPadstrPadLeft()
public
strPadLeft(int $length[, string $pad_string = ' ' ]) : StrPad
Parameters
- $length : int
- $pad_string : string = ' '
Return values
StrPadstrPadRight()
public
strPadRight(int $length[, string $pad_string = ' ' ]) : StrPad
Parameters
- $length : int
- $pad_string : string = ' '
Return values
StrPadstrReplace()
public
strReplace(array<string|int, string>|ScalarFunction|string $search, array<string|int, string>|ScalarFunction|string $replace) : StrReplace
Parameters
- $search : array<string|int, string>|ScalarFunction|string
- $replace : array<string|int, string>|ScalarFunction|string
Return values
StrReplacetoDate()
public
toDate([ScalarFunction|string $format = DateTimeInterface::RFC3339 ][, ScalarFunction|DateTimeZone $timeZone = new DateTimeZone('UTC') ]) : ToDate
Parameters
- $format : ScalarFunction|string = DateTimeInterface::RFC3339
-
- current format of the date that will be used to create DateTimeImmutable instance
- $timeZone : ScalarFunction|DateTimeZone = new DateTimeZone('UTC')
Return values
ToDatetoDateTime()
public
toDateTime([ScalarFunction|string $format = 'Y-m-d H:i:s' ][, DateTimeZone|ScalarFunction $timeZone = new DateTimeZone('UTC') ]) : ToDateTime
Parameters
- $format : ScalarFunction|string = 'Y-m-d H:i:s'
-
- current format of the date that will be used to create DateTimeImmutable instance
- $timeZone : DateTimeZone|ScalarFunction = new DateTimeZone('UTC')
Return values
ToDateTimetrim()
public
trim([Type $type = TrimType::BOTH ][, string $characters = "
" ]) : Trim
Parameters
- $type : Type = TrimType::BOTH
- $characters : string = " "
Return values
Trimunpack()
public
unpack([array<string|int, mixed> $skipKeys = [] ][, ScalarFunction|string|null $entryPrefix = null ]) : ArrayUnpack
Parameters
- $skipKeys : array<string|int, mixed> = []
- $entryPrefix : ScalarFunction|string|null = null
Return values
ArrayUnpackupper()
public
upper() : ToUpper
Return values
ToUpperxpath()
public
xpath(string $string) : XPath
Parameters
- $string : string