Skip to main content

Zymba Documentation

Array

Text
object @Array() {
clear(object $array): object {}
combine(object $keys, object $values): object {}
complementByKeys(object $array, ...$arrays): object {}
complementByValues(object $array, ...$arrays): object {}
concat(object $array, ...$arrays): object {}
contains(object $array, ...$arrays): bool {}
count(object $array): int {}
countDistinctValues(object $array): int {}
countUsedValues(object $array): object {}
countValue(object $array, mixed $value): int {}
createAssociative(object $keys, mixed $value): object {}
createIndex(int $length, mixed $value): object {}
createRange(number $from, number $to, number $step): object {}
equals(object $array1, object $array2): bool {}
equalsInOrder(object $array1, object $array2): bool {}
every(object $array, function $callback, ?object $bind): bool {}
filter(object $array, function $callback, ?object $bind): object {}
findKey(object $array, function $callback, ?object $bind): int {}
findValue(object $array, function $callback, ?object $bind): mixed {}
firstKey(object $array): int {}
firstValue(object $array): mixed {}
flip(object $array, ?string $key): object {}
forEach(object $array, function $callback, ?object $bind) {}
fromCSV(string $string, string $delimiter): object {}
getUniformType(object $array): string {}
hasAllKeys(object $array, object $keys): bool {}
hasAllValues(object $array, object $values): bool {}
hasAnyKeys(object $array, object $keys): bool {}
hasAnyValues(object $array, object $values): bool {}
hasKey(object $array, string $key): bool {}
hasSameKeys(object $array1, object $array2): bool {}
hasSameKeysInOrder(object $array1, object $array2): bool {}
hasSameValues(object $array1, object $array2): bool {}
hasValue(object $array, mixed $value): bool {}
head(object $array): object {}
insert(object $array, object $values, int $offset): object {}
intersectByKeys(object $array, ...$arrays): object {}
intersectByValues(object $array, ...$arrays): object {}
isEmpty(object $array): bool {}
isIndexed(object $array): bool {}
isMultidimensional(object $array): bool {}
joinKeys(object $array, string $delimiter): string {}
joinNonEmptyValues(object $array, string $delimiter, ?string $key): string {}
joinValues(object $array, string $delimiter, ?string $key): string {}
keyAt(object $array, int $offset): int {}
keyOf(object $array, mixed $value): int {}
lastKey(object $array): int {}
lastKeyOf(object $array, mixed $value): int {}
lastValue(object $array): mixed {}
linearize(object $array, string $key): object {}
listKeys(object $array): object {}
listValues(object $array, ?string $key): object {}
map(object $array, function $callback, ?object $bind): object {}
merge(object $array, ...$arrays): object {}
pad(object $array, int $length, mixed $padding): object {}
partition(object $array, int $length): object {}
pop(object $array): mixed {}
push(object $array, mixed $value): object {}
randomKey(object $array): int {}
randomValue(object $array): mixed {}
reduce(object $array, mixed $initial, function $callback, ?object $bind): mixed {}
reindex(object $array, int $initial): object {}
remove(object $array, ...$arrays): object {}
removeKey(object $array, string $key): object {}
removeKeys(object $array, object $keys): object {}
removeValue(object $array, mixed $value): object {}
removeValues(object $array, object $values): object {}
repeat(object $values, int $count): object {}
replace(object $array, ...$arrays): object {}
reverse(object $array): object {}
shift(object $array): mixed {}
shuffle(object $array): object {}
slice(object $array, int $offset, ?int $length): object {}
some(object $array, function $callback, ?object $bind): bool {}
sortAscByKeys(object $array): object {}
sortAscByValues(object $array, ?string $key): object {}
sortByKeys(object $array, function $callback, ?object $bind): object {}
sortByValues(object $array, function $callback, ?object $bind, ?string $key): object {}
sortDescByKeys(object $array): object {}
sortDescByValues(object $array, ?string $key): object {}
sortMultidimensional(object $array, object $callbacks, ?object $bind): object {}
sortNaturalAscByKeys(object $array): object {}
sortNaturalAscByValues(object $array, ?string $key): object {}
sortNaturalDescByKeys(object $array): object {}
sortNaturalDescByValues(object $array, ?string $key): object {}
splice(object $array, int $offset, ?int $length, object $replacement): object {}
tail(object $array): object {}
toCSV(object $array, string $delimiter, bool $enclosed): string {}
toLowerKeys(object $array): object {}
toLowerKeys(object $array): object {}
toUpperKeys(object $array): object {}
toUpperKeys(object $array): object {}
unionByKeys(object $array, ...$arrays): object {}
unionByValues(object $array, ...$arrays): object {}
unique(object $array, ?string $key): object {}
unshift(object $array, mixed $value): object {}
valueAt(object $array, string $key): mixed {}
}

Static array related prototypes and functions.

Functions

Clears an array by removing all elements.

CODE
@Array.clear(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object
CODE
@Array.combine(object $keys, object $values): object
Parameters
NameTypeValueDefault
keysobject[key, ...][]
valuesobject[value, ...][]
Returns
TypeValue
object[keys-unique-string-value: last-applicable-value, ...]
CODE
@Array.complementByKeys(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[retained-original-key: original-value, ...]
CODE
@Array.complementByValues(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: retained-original-value, ...]

Concatenates specific values to an array.

CODE
@Array.concat(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: original-value, ..., concatenated-value, ...]

Determines whether an array contains specific elements.

CODE
@Array.contains(object $array, variadic $arrays): bool
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
bool

Counts the total number of elements within an array.

CODE
@Array.count(object $array): int
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
int

Counts the total number of distinct values within an array.

CODE
@Array.countDistinctValues(object $array): int
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
int

Counts the total number of occurrences for each value within an array.

CODE
@Array.countUsedValues(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[unique-string-value: count, ...]

Counts the total number of occurrences of a specific value within an array.

CODE
@Array.countValue(object $array, mixed $value): int
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
int

Creates an associative array with uniformly initialized values.

CODE
@Array.createAssociative(object $keys, mixed $value): object
Parameters
NameTypeValueDefault
keysobject[]
valuemixednull
Returns
TypeValue
object[keys-unique-string-value: init-value, ...]

Creates an indexed array of a specific length with uniformly initialized values.

CODE
@Array.createIndex(int $length, mixed $value): object
Parameters
NameTypeValueDefault
lengthint0
valuemixednull
Returns
TypeValue
object[init-value, ...]

Creates an indexed array with values of a specific numeric range.

CODE
@Array.createRange(number $from, number $to, number $step): object
Parameters
NameTypeValueDefault
fromnumber0
tonumber0
stepnumber1
Returns
TypeValue
object[range-value, ...]

Determines whether two arrays are equal, not considering the order of elements, meaning they have the same elements, but not necessarily in the same order.

CODE
@Array.equals(object $array1, object $array2): bool
Parameters
NameTypeValueDefault
array1object[]
array2object[]
Returns
TypeValue
bool

Determines whether two arrays are equal, also considering the order of elements, meaning they have the same elements in the same order.

CODE
@Array.equalsInOrder(object $array1, object $array2): bool
Parameters
NameTypeValueDefault
array1object[]
array2object[]
Returns
TypeValue
bool
CODE
@Array.every(object $array, function $callback, ?object $bind): bool
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
bool
CODE
@Array.filter(object $array, function $callback, ?object $bind): object
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
object[retained-key: retained-value, ...]
CODE
@Array.findKey(object $array, function $callback, ?object $bind): int
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
int
string
null
CODE
@Array.findValue(object $array, function $callback, ?object $bind): mixed
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
mixed
null

Returns the key of the first element within an array.

CODE
@Array.firstKey(object $array): int
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
int
string
null

Returns the value of the first element within an array.

CODE
@Array.firstValue(object $array): mixed
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
mixed
null

Flips the elements of an array by exchanging keys for values.

CODE
@Array.flip(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[unique-string-value: last-applicable-key, ...]
CODE
@Array.forEach(object $array, function $callback, ?object $bind): void
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
CODE
@Array.fromCSV(string $string, string $delimiter): object
Parameters
NameTypeValueDefault
stringstring""
delimiterstring";"
Returns
TypeValue
object[[value, ...], ...]

Gets the uniformly determined type of all values in an array.

CODE
@Array.getUniformType(object $array): string
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
string
null

Determines whether an array has all of the specific keys.

CODE
@Array.hasAllKeys(object $array, object $keys): bool
Parameters
NameTypeValueDefault
arrayobject[]
keysobject[key, ...][]
Returns
TypeValue
bool

Determines whether an array has all of the specific values.

CODE
@Array.hasAllValues(object $array, object $values): bool
Parameters
NameTypeValueDefault
arrayobject[]
valuesobject[value, ...][]
Returns
TypeValue
bool

Determines whether an array has any (at least one) of the specific keys.

CODE
@Array.hasAnyKeys(object $array, object $keys): bool
Parameters
NameTypeValueDefault
arrayobject[]
keysobject[key, ...][]
Returns
TypeValue
bool

Determines whether an array has any (at least one) of the specific values.

CODE
@Array.hasAnyValues(object $array, object $values): bool
Parameters
NameTypeValueDefault
arrayobject[]
valuesobject[value, ...][]
Returns
TypeValue
bool

Determines whether an array has a specific key.

CODE
@Array.hasKey(object $array, string $key): bool
Parameters
NameTypeValueDefault
arrayobject[]
keystring"0"
Returns
TypeValue
bool

Determines whether two arrays have the same keys.

CODE
@Array.hasSameKeys(object $array1, object $array2): bool
Parameters
NameTypeValueDefault
array1object[]
array2object[]
Returns
TypeValue
bool

Determines whether two arrays have the same keys, also considering the order of keys, meaning they have the same keys in the same order.

CODE
@Array.hasSameKeysInOrder(object $array1, object $array2): bool
Parameters
NameTypeValueDefault
array1object[]
array2object[]
Returns
TypeValue
bool

Determines whether two arrays have the same values.

CODE
@Array.hasSameValues(object $array1, object $array2): bool
Parameters
NameTypeValueDefault
array1object[]
array2object[]
Returns
TypeValue
bool

Determines whether an array has a specific value.

CODE
@Array.hasValue(object $array, mixed $value): bool
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
bool

Returns the head of an array, meaning only the first element.

CODE
@Array.head(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[first-key: first-value]

Inserts specific values into an array at a specific offset.

CODE
@Array.insert(object $array, object $values, int $offset): object
Parameters
NameTypeValueDefault
arrayobject[]
valuesobject[value, ...][]
offsetint0
Returns
TypeValue
object[(non-numeric-original-key: original-value) / original-value-if-numeric-key, ..., inserted-value, ..., (non-numeric-original-key: original-value) / original-value-if-numeric-key, ...]
CODE
@Array.intersectByKeys(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[retained-original-key: original-value, ...]
CODE
@Array.intersectByValues(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: retained-original-value, ...]

Determines whether an array is empty, meaning it does not contain any elements.

CODE
@Array.isEmpty(object $array): bool
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
bool

Determines whether an array is indexed, meaning it only contains consecutive numeric keys from zero onwards.

CODE
@Array.isIndexed(object $array): bool
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
bool

Determines whether an array is multidimensional, meaning it contains object values.

CODE
@Array.isMultidimensional(object $array): bool
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
bool

Joins the keys of an array to form a string representation with each key separated by a specific delimiter.

CODE
@Array.joinKeys(object $array, string $delimiter): string
Parameters
NameTypeValueDefault
arrayobject[]
delimiterstring""
Returns
TypeValue
string

Joins the values of an array to form a string representation with each value separated by a specific delimiter, whereas empty string values are ignored.

CODE
@Array.joinNonEmptyValues(object $array, string $delimiter, ?string $key): string
Parameters
NameTypeValueDefault
arrayobject[]
delimiterstring""
key?stringunidimensional
Returns
TypeValue
string

Joins the values of an array to form a string representation with each value separated by a specific delimiter.

CODE
@Array.joinValues(object $array, string $delimiter, ?string $key): string
Parameters
NameTypeValueDefault
arrayobject[]
delimiterstring""
key?stringunidimensional
Returns
TypeValue
string

Returns the key at a specific offset within an array.

CODE
@Array.keyAt(object $array, int $offset): int
Parameters
NameTypeValueDefault
arrayobject[]
offsetint0
Returns
TypeValue
int
string
null

Returns the key of the first occurrence of a specific value within an array.

CODE
@Array.keyOf(object $array, mixed $value): int
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
int
string
null

Returns the key of the last element within an array.

CODE
@Array.lastKey(object $array): int
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
int
string
null

Returns the key of the last occurrence of a specific value within an array.

CODE
@Array.lastKeyOf(object $array, mixed $value): int
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
int
null

Returns the value of the last element within an array.

CODE
@Array.lastValue(object $array): mixed
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
mixed
null

Linearizes the elements of a multidimensional array by a specific key.

CODE
@Array.linearize(object $array, string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
keystring"0"
Returns
TypeValue
object[outer-key: inner-value-by-key, ...]

Lists all keys of an array.

CODE
@Array.listKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[original-key, ...]

Lists all values of an array.

CODE
@Array.listValues(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[original-value, ...]
CODE
@Array.map(object $array, function $callback, ?object $bind): object
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
object[original-key: mapped-value, ...]

Merges an array with specific elements, whereas duplicate non-numeric keys are overwritten while elements with numeric keys are appended.

CODE
@Array.merge(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: (elements-value / original-value), ..., (supplemental-non-numeric-elements-key: elements-value) / elements-value-if-numeric-key, ...]

Pads an array to a specific length by repeatedly filling it with a specific padding value.

CODE
@Array.pad(object $array, int $length, mixed $padding): object
Parameters
NameTypeValueDefault
arrayobject[]
lengthint0
paddingmixednull
Returns
TypeValue
object[(non-numeric-original-key: original-value) / original-value-if-numeric-key, ..., padding-value, ...]

Partitions an array into isolated chunks of a specific length.

CODE
@Array.partition(object $array, int $length): object
Parameters
NameTypeValueDefault
arrayobject[]
lengthint1
Returns
TypeValue
object[[original-key: original-value, ...], ...]

Pops an element off the end of an array and returns its value.

CODE
@Array.pop(object $array): mixed
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
mixed
null

Pushes a specific value onto the end of an array.

CODE
@Array.push(object $array, mixed $value): object
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
object[original-key: original-value, ..., added-value]

Returns the key of a random element within an array.

CODE
@Array.randomKey(object $array): int
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
int
string
null

Returns the value of a random element within an array.

CODE
@Array.randomValue(object $array): mixed
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
mixed
null
CODE
@Array.reduce(object $array, mixed $initial, function $callback, ?object $bind): mixed
Parameters
NameTypeValueDefault
arrayobject[]
initialmixednull
callbackfunctionnull
bind?objectnull
Returns
TypeValue
mixed

Re-indexes all elements of an array with consecutive numeric keys.

CODE
@Array.reindex(object $array, int $initial): object
Parameters
NameTypeValueDefault
arrayobject[]
initialint0
Returns
TypeValue
object[original-value, ...]

Removes specific elements from an array.

CODE
@Array.remove(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[retained-key: retained-value, ...]

Remove the element with a specific key from an array.

CODE
@Array.removeKey(object $array, string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
keystring"0"
Returns
TypeValue
object[retained-key: original-value, ...]

Removes elements with specific keys from an array.

CODE
@Array.removeKeys(object $array, object $keys): object
Parameters
NameTypeValueDefault
arrayobject[]
keysobject[key, ...][]
Returns
TypeValue
object[retained-key: original-value, ...]

Removes elements with a specific value from an array.

CODE
@Array.removeValue(object $array, mixed $value): object
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
object[original-key: retained-value, ...]

Removes elements with specific values from an array.

CODE
@Array.removeValues(object $array, object $values): object
Parameters
NameTypeValueDefault
arrayobject[]
valuesobject[value, ...][]
Returns
TypeValue
object[original-key: retained-value, ...]

Repeatedly concatenates specific values to themselves and returns the aligned end-to-end array.

CODE
@Array.repeat(object $values, int $count): object
Parameters
NameTypeValueDefault
valuesobject[value, ...][]
countint1
Returns
TypeValue
object[first-value, ..., last-value, first-value, ..., last-value, ...]

Replaces specific elements of an array based on common keys.

CODE
@Array.replace(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: (elements-value / original-value), ..., supplemental-elements-key: elements-value, ...]

Reverse the order of elements within an array.

CODE
@Array.reverse(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[last-key: last-value, ..., first-key: first-value]

Shifts an element off the beginning of an array and returns its value.

CODE
@Array.shift(object $array): mixed
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
mixed
null

Suffles an array by randomizing the order of elements.

CODE
@Array.shuffle(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[reordered-key: original-value, ...]

Slices an array by creating a shallow copy of a specific portion.

CODE
@Array.slice(object $array, int $offset, ?int $length): object
Parameters
NameTypeValueDefault
arrayobject[]
offsetint0
length?intmaximum length
Returns
TypeValue
object[retained-key: retained-value, ...]
CODE
@Array.some(object $array, function $callback, ?object $bind): bool
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
bool

Sorts an array by keys in ascending lexicographic or numeric order.

CODE
@Array.sortAscByKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[reordered-key: original-value, ...]

Sorts an array by values in ascending lexicographic or numeric order.

CODE
@Array.sortAscByValues(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[original-key: reordered-value, ...]

Sorts an array by keys in a particular order determined by a specific comparison callback function.

CODE
@Array.sortByKeys(object $array, function $callback, ?object $bind): object
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
Returns
TypeValue
object[reordered-key: original-value, ...]

Sorts an array by values in a particular order determined by a specific comparison callback function.

CODE
@Array.sortByValues(object $array, function $callback, ?object $bind, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
callbackfunctionnull
bind?objectnull
key?stringunidimensional
Returns
TypeValue
object[original-key: reordered-value, ...]

Sorts an array by keys in descending lexicographic or numeric order.

CODE
@Array.sortDescByKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[reordered-key: original-value, ...]

Sorts an array by values in descending lexicographic or numeric order.

CODE
@Array.sortDescByValues(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[original-key: reordered-value, ...]
CODE
@Array.sortMultidimensional(object $array, object $callbacks, ?object $bind): object
Parameters
NameTypeValueDefault
arrayobject[]
callbacksobject[key: callback, ...][]
bind?objectnull
Returns
TypeValue
object[original-key: reordered-value, ...]

Sorts an array by keys in ascending natural and case-insensitive order (US-ASCII only).

CODE
@Array.sortNaturalAscByKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[reordered-key: original-value, ...]

Sorts an array by values in ascending natural and case-insensitive order (US-ASCII only).

CODE
@Array.sortNaturalAscByValues(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[original-key: reordered-value, ...]

Sorts an array by keys in descending natural and case-insensitive order (US-ASCII only).

CODE
@Array.sortNaturalDescByKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[reordered-key: original-value, ...]

Sorts an array by values in descending natural and case-insensitive order (US-ASCII only).

CODE
@Array.sortNaturalDescByValues(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[original-key: reordered-value, ...]

Extracts a specific portion of an array and replaces it with specific replacement values.

CODE
@Array.splice(object $array, int $offset, ?int $length, object $replacement): object
Parameters
NameTypeValueDefault
arrayobject[]
offsetint0
length?intmaximum length
replacementobject[value, ...][]
Returns
TypeValue
object[extracted-key: extracted-value, ...]

Creates a shallow copy of the tail of an array, meaning all elements except the first.

CODE
@Array.tail(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[tail-key: tail-value, ...]
CODE
@Array.toCSV(object $array, string $delimiter, bool $enclosed): string
Parameters
NameTypeValueDefault
arrayobject[[value, ...], ...][]
delimiterstring";"
enclosedboolfalse
Returns
TypeValue
string

Converts the keys of an array to lower case (UTF-8).

CODE
@Array.toLowerKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[unique-lower-string-key: last-applicable-value, ...]

Converts the keys of an array to lower case (US-ASCII only).

CODE
@Array.toLowerKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[unique-lower-string-key: last-applicable-value, ...]

Converts the keys of an array to upper case (UTF-8).

CODE
@Array.toUpperKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[unique-upper-string-key: last-applicable-value, ...]

Converts the keys of an array to upper case (US-ASCII only).

CODE
@Array.toUpperKeys(object $array): object
Parameters
NameTypeValueDefault
arrayobject[]
Returns
TypeValue
object[unique-upper-string-key: last-applicable-value, ...]
CODE
@Array.unionByKeys(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: original-value, ..., supplemental-elements-key: elements-value]
CODE
@Array.unionByValues(object $array, variadic $arrays): object
Parameters
NameTypeValueDefault
arrayobject[]
arraysvariadic[key: value, ...]...
Returns
TypeValue
object[original-key: (supplemental-elements-value / original-value), ..., (non-numeric-elements-key: supplemental-elements-value) / supplemental-elements-value-if-numeric-key, ...]

Uniquifies an array by discarding duplicate values, retaining only the first occurrence of each value.

CODE
@Array.unique(object $array, ?string $key): object
Parameters
NameTypeValueDefault
arrayobject[]
key?stringunidimensional
Returns
TypeValue
object[first-applicable-key: unique-value, ...]

Prepends a specific value to the beginning of an array.

CODE
@Array.unshift(object $array, mixed $value): object
Parameters
NameTypeValueDefault
arrayobject[]
valuemixednull
Returns
TypeValue
object[added-value, (non-numeric-original-key: original-value) / original-value-if-numeric-key, ...]

Returns the value at a specific key within an array.

CODE
@Array.valueAt(object $array, string $key): mixed
Parameters
NameTypeValueDefault
arrayobject[]
keystring"0"
Returns
TypeValue
mixed
null