Executando verificação de segurança...
3

Exato! Poderia tipar a entrada da função como array também, já eliminaria essa verificação.

function listInLine(array $list = []): string {
    return is_null($list) ? '' : implode(', ', $list). '.';
}
Carregando publicação patrocinada...
1

Ilustre Douglas Silvestrini ou simplesmente sivestrini neste ponto:

Ah os nomes são dados em formato de objecto ou array

Falo que dados podem ser fornecidas como listas de dois formatos.

Será que teria como validar nos parametros dois formato? (reduziria muito mais a função)

2

Verdade, esqueci do objeto. Como você fez um type cast do array transformando-o em objeto, ele vai ser do tipo stdClass, então dá pra tipar também.

function listInLine(stdClass|array $list): string {
    // força a ser array
    $list = (array) $list;
    return is_null($list) ? '' : implode(', ', $list). '.';
}
2