DEV Community

loading...

PHP - O operador splat (a.k.a os três pontos...)

Raphael da Silva
Updated on ・1 min read

O operador splat é um operador formado por três pontos ... utilizado para trabalhar com funções variádicas. Esse tipo de função pode receber um número ilimitado de parâmetros. A função a seguir serve para ilustrar esse recurso que está presente desde a versão 5.6 do PHP.


function printMessages(...$messages){

    foreach($messages as $message){
        echo $message, PHP_EOL;
    }

}

printMessages(
    'Olá', 
    'Adeus', 
    'Como vai?', 
    'Será que algo vai melhorar?'
);

Enter fullscreen mode Exit fullscreen mode

Como é possível perceber, a função pode receber um número infinito de parâmetros, no exemplo foram passadas três strings. O operador splat foi usado antes do nome do parâmetro da função, isso serve para indicar que ela pode receber um lista de ilimitada de argumentos.

Além da declaração dos parâmetros de uma função variádica, o operador splat também serve para converter um array em uma lista de argumentos para serem passados como parâmetros. Segue o exemplo:


$messages = [
    'Olá',
    'Adeus',
    'Como vai?',
    'Será que algo vai melhorar?'
];

// Convertendo o array para argumentos
printMessages(...$messages);

Enter fullscreen mode Exit fullscreen mode

Discussion (0)

Forem Open with the Forem app