Welcome to Knowledge Base!

KB at your finger tips

This is one stop global knowledge base where you can learn about all the products, solutions and support features.

Categories
All
Web-PHP
PHP / array_values — DevDocs

array_values

(PHP 4, PHP 5, PHP 7, PHP 8)

array_values Return all the values of an array

Description

array_values(array $array): array

array_values() returns all the values from the array and indexes the array numerically.

Parameters

array

The array.

Return Values

Returns an indexed array of values.

Examples

Example #1 array_values() example

<?php
$array = array("size" => "XL", "color" => "gold");
print_r(array_values($array));
?>

The above example will output:

Array
(
    [0] => XL
    [1] => gold
)

See Also

  • array_keys() - Return all the keys or a subset of the keys of an array
  • array_combine() - Creates an array by using one array for keys and another for its values
PHP / array_walk — DevDocs

array_walk

(PHP 4, PHP 5, PHP 7, PHP 8)

array_walk Apply a user supplied function to every member of an array

Description

array_walk(array|object &$array, callable $callback, mixed $arg = null): bool

Applies the user-defined callback function to each element of the array array.

array_walk() is not affected by the internal array pointer of array . array_walk() will walk through the entire array regardless of pointer position.

Parameters

array

The input array.

callback

Typically, callback takes on two parameters. The array parameter's value being the first, and the key/index second.

Note :

If callback needs to be working with the actual values of the array, specify the first parameter of callback as a reference. Then, any changes made to those elements will be made in the original array itself.

Note :

Many internal functions (for example strtolower() ) will throw a warning if more than the expected number of argument are passed in and are not usable directly as a callback .

Only the values of the array may potentially be changed; its structure cannot be altered, i.e., the programmer cannot add, unset or reorder elements. If the callback does not respect this requirement, the behavior of this function is undefined, and unpredictable.

arg

If the optional arg parameter is supplied, it will be passed as the third parameter to the callback .

Return Values

Returns true .

Errors/Exceptions

As of PHP 7.1.0, an ArgumentCountError will be thrown if the callback function requires more than 2 parameters (the value and key of the array member), or more than 3 parameters if the arg is also passed. Previously, in this case an error of level E_WARNING would be generated each time array_walk() calls callback .

Changelog

Version Description
8.0.0 If callback expects the second or third parameter to be passed by reference, this function will now emit an E_WARNING .

Examples

Example #1 array_walk() example

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

function test_alter(&$item1, $key, $prefix)
{
    $item1 = "$prefix: $item1";
}

function test_print($item2, $key)
{
    echo "$key. $item2\n";
}

echo "Before ...:\n";
array_walk($fruits, 'test_print');

array_walk($fruits, 'test_alter', 'fruit');
echo "... and after:\n";

array_walk($fruits, 'test_print');
?>

The above example will output:

Before ...:
d. lemon
a. orange
b. banana
c. apple
... and after:
d. fruit: lemon
a. fruit: orange
b. fruit: banana
c. fruit: apple

Example #2 array_walk() example using anonymous function

<?php
$elements = ['a', 'b', 'c'];

array_walk($elements, function ($value, $key) {
  echo "{$key} => {$value}\n";
});

?>

The above example will output:

0 => a
1 => b
2 => c

See Also

  • array_walk_recursive() - Apply a user function recursively to every member of an array
  • iterator_apply() - Call a function for every element in an iterator
  • list() - Assign variables as if they were an array
  • each() - Return the current key and value pair from an array and advance the array cursor
  • call_user_func_array() - Call a callback with an array of parameters
  • array_map() - Applies the callback to the elements of the given arrays
  • foreach
Read article
PHP / array_walk_recursive — DevDocs

array_walk_recursive

(PHP 5, PHP 7, PHP 8)

array_walk_recursive Apply a user function recursively to every member of an array

Description

array_walk_recursive(array|object &$array, callable $callback, mixed $arg = null): bool

Applies the user-defined callback function to each element of the array . This function will recurse into deeper arrays.

Parameters

array

The input array.

callback

Typically, callback takes on two parameters. The array parameter's value being the first, and the key/index second.

Note :

If callback needs to be working with the actual values of the array, specify the first parameter of callback as a reference. Then, any changes made to those elements will be made in the original array itself.

arg

If the optional arg parameter is supplied, it will be passed as the third parameter to the callback .

Return Values

Returns true on success or false on failure.

Examples

Example #1 array_walk_recursive() example

<?php
$sweet = array('a' => 'apple', 'b' => 'banana');
$fruits = array('sweet' => $sweet, 'sour' => 'lemon');

function test_print($item, $key)
{
    echo "$key holds $item\n";
}

array_walk_recursive($fruits, 'test_print');
?>

The above example will output:

a holds apple
b holds banana
sour holds lemon

You may notice that the key ' sweet ' is never displayed. Any key that holds an array will not be passed to the function.

See Also

  • array_walk() - Apply a user supplied function to every member of an array
Read article
PHP / arsort — DevDocs

arsort

(PHP 4, PHP 5, PHP 7, PHP 8)

arsort Sort an array in descending order and maintain index association

Description

arsort(array &$array, int $flags = SORT_REGULAR): bool

Sorts array in place in descending order, such that its keys maintain their correlation with the values they are associated with.

This is used mainly when sorting associative arrays where the actual element order is significant.

Note :

If two members compare as equal, they retain their original order. Prior to PHP 8.0.0, their relative order in the sorted array was undefined.

Note :

Resets array's internal pointer to the first element.

Parameters

array

The input array.

flags

The optional second parameter flags may be used to modify the sorting behavior using these values:

Sorting type flags:

  • SORT_REGULAR - compare items normally; the details are described in the comparison operators section
  • SORT_NUMERIC - compare items numerically
  • SORT_STRING - compare items as strings
  • SORT_LOCALE_STRING - compare items as strings, based on the current locale. It uses the locale, which can be changed using setlocale()
  • SORT_NATURAL - compare items as strings using "natural ordering" like natsort()
  • SORT_FLAG_CASE - can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively

Return Values

Always returns true .

Examples

Example #1 arsort() example

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
arsort($fruits);
foreach ($fruits as $key => $val) {
    echo "$key = $val\n";
}
?>

The above example will output:

a = orange
d = lemon
b = banana
c = apple

The fruits have been sorted in reverse alphabetical order, and the index associated with each element has been maintained.

See Also

  • sort() - Sort an array in ascending order
  • asort() - Sort an array in ascending order and maintain index association
  • The comparison of array sorting functions
Read article
PHP / asort — DevDocs

asort

(PHP 4, PHP 5, PHP 7, PHP 8)

asort Sort an array in ascending order and maintain index association

Description

asort(array &$array, int $flags = SORT_REGULAR): bool

Sorts array in place in ascending order, such that its keys maintain their correlation with the values they are associated with.

This is used mainly when sorting associative arrays where the actual element order is significant.

Note :

If two members compare as equal, they retain their original order. Prior to PHP 8.0.0, their relative order in the sorted array was undefined.

Note :

Resets array's internal pointer to the first element.

Parameters

array

The input array.

flags

The optional second parameter flags may be used to modify the sorting behavior using these values:

Sorting type flags:

  • SORT_REGULAR - compare items normally; the details are described in the comparison operators section
  • SORT_NUMERIC - compare items numerically
  • SORT_STRING - compare items as strings
  • SORT_LOCALE_STRING - compare items as strings, based on the current locale. It uses the locale, which can be changed using setlocale()
  • SORT_NATURAL - compare items as strings using "natural ordering" like natsort()
  • SORT_FLAG_CASE - can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively

Return Values

Always returns true .

Examples

Example #1 asort() example

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
asort($fruits);
foreach ($fruits as $key => $val) {
    echo "$key = $val\n";
}
?>

The above example will output:

c = apple
b = banana
d = lemon
a = orange

The fruits have been sorted in alphabetical order, and the index associated with each element has been maintained.

See Also

  • sort() - Sort an array in ascending order
  • arsort() - Sort an array in descending order and maintain index association
  • The comparison of array sorting functions
Read article
PHP / compact — DevDocs

compact

(PHP 4, PHP 5, PHP 7, PHP 8)

compact Create array containing variables and their values

Description

compact(array|string $var_name, array|string ...$var_names): array

Creates an array containing variables and their values.

For each of these, compact() looks for a variable with that name in the current symbol table and adds it to the output array such that the variable name becomes the key and the contents of the variable become the value for that key. In short, it does the opposite of extract() .

Note :

Before PHP 7.3, any strings that are not set will silently be skipped.

Parameters

var_name
var_names

compact() takes a variable number of parameters. Each parameter can be either a string containing the name of the variable, or an array of variable names. The array can contain other arrays of variable names inside it; compact() handles it recursively.

Return Values

Returns the output array with all the variables added to it.

Errors/Exceptions

compact() issues an E_NOTICE level error if a given string refers to an unset variable.

Changelog

Version Description
7.3.0 compact() now issues an E_NOTICE level error if a given string refers to an unset variable. Formerly, such strings have been silently skipped.

Examples

Example #1 compact() example

<?php
$city  = "San Francisco";
$state = "CA";
$event = "SIGGRAPH";

$location_vars = array("city", "state");

$result = compact("event", $location_vars);
print_r($result);
?>

The above example will output:

Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)

Notes

Note : Gotcha

Because variable variables may not be used with PHP's Superglobal arrays within functions, the Superglobal arrays may not be passed into compact() .

See Also

  • extract() - Import variables into the current symbol table from an array
Read article