Functional\Exceptions\InvalidArgumentException::assertArrayAccess PHP Method

assertArrayAccess() public static method

public static assertArrayAccess ( $collection, $callee, $parameterPosition )
    public static function assertArrayAccess($collection, $callee, $parameterPosition)
    {
        self::assertCollectionAlike($collection, 'ArrayAccess', $callee, $parameterPosition);
    }

Usage Example

Beispiel #1
0
/**
 * Pick a single element from a collection of objects or arrays by index.
 * If no such index exists, return the default value.
 *
 * @param ArrayAccess|array $collection
 * @param mixed $index
 * @param mixed $default
 * @param callable $callback Custom function to check if index exists, default function is "isset"
 * @return mixed
 */
function pick($collection, $index, $default = null, callable $callback = null)
{
    InvalidArgumentException::assertArrayAccess($collection, __FUNCTION__, 1);
    if ($callback === null) {
        if (!isset($collection[$index])) {
            return $default;
        }
    } else {
        if (!$callback($collection, $index)) {
            return $default;
        }
    }
    return $collection[$index];
}