Supported Versions: PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8
Applies the callback to the elements of the given arrays
array_map(?callable $callback, array $array, array ...$arrays): array
    protected function formatChannels(array $channels)

    {

        return 
array_map(function ($channel) {

            
$channel = (string) $channel;



            if (
Str::startsWith($channel, ['private-''presence-'])) {

                return 
str_starts_with($channel'private-')

                    ? 
Str::replaceFirst('private-''private:'$channel)

                    : 
Str::replaceFirst('presence-''presence:'$channel);

            }



            return 
'public:'.$channel;

        }, 
$channels);

    }
    protected function formatChannels(array $channels)

    {

        return 
array_map(function ($channel) {

            return (string) 
$channel;

        }, 
$channels);

    }
    protected function formatChannels(array $channels)

    {

        return 
array_map(function ($channel) {

            return 
$this->prefix.$channel;

        }, 
parent::formatChannels($channels));

    }

}
    public function refreshEventDispatcher()

    {

        
array_map([$this'setEventDispatcher'], $this->stores);

    }
    public function many(array $keys)

    {

        
$prefixedKeys array_map(function ($key) {

            return 
$this->prefix.$key;

        }, 
$keys);



        
$response $this->dynamo->batchGetItem([

            
'RequestItems' => [
    public function many(array $keys)

    {

        
$prefixedKeys array_map(function ($key) {

            return 
$this->prefix.$key;

        }, 
$keys);



        if (
$this->onVersionThree) {

            
$values $this->memcached->getMulti($prefixedKeysMemcached::GET_PRESERVE_ORDER);
    {

        
$results = [];



        
$values $this->connection()->mget(array_map(function ($key) {

            return 
$this->prefix.$key;

        }, 
$keys));



        foreach (
$values as $index => $value) {

            
$results[$keys[$index]] = ! is_null($value) ? $this->unserialize($value) : null;
    protected function tagIds()

    {

        return 
array_map([$this'tagId'], $this->names);

    }
        $keys array_keys($array);



        try {

            
$items array_map($callback$array$keys);

        } catch (
ArgumentCountError) {

            
$items array_map($callback$array);

        }
        try {

            
$items array_map($callback$array$keys);

        } catch (
ArgumentCountError) {

            
$items array_map($callback$array);

        }



        return 
array_combine($keys$items);
    public function crossJoin(...$lists)

    {

        return new static(
Arr::crossJoin(

            
$this->items, ...array_map([$this'getArrayableItems'], $lists)

        ));

    }
    public function zip($items)

    {

        
$arrayableItems array_map(function ($items) {

            return 
$this->getArrayableItems($items);

        }, 
func_get_args());



        
$params array_merge([function () {

            return new static(
func_get_args());
            return new static(func_get_args());

        }, 
$this->items], $arrayableItems);



        return new static(
array_map(...$params));

    }
    public function jsonSerialize(): array

    {

        return 
array_map(function ($value) {

            if (
$value instanceof JsonSerializable) {

                return 
$value->jsonSerialize();

            } elseif (
$value instanceof Jsonable) {

                return 
json_decode($value->toJson(), true);

            } elseif (
$value instanceof Arrayable) {

                return 
$value->toArray();

            }



            return 
$value;

        }, 
$this->all());

    }
    private function getCronExpressionSpacing($events)

    {

        
$rows $events->map(fn ($event) => array_map('mb_strlen'explode(' '$event->expression)));



        return 
collect($rows[0] ?? [])->keys()->map(fn ($key) => $rows->max($key));

    }