2
respostas

Function buscaDadosRequest

Olá! Ao realizar o passo a passo, reparei que na aula 05 na atividade 03 existe uma diferença no código do ExtratorDadosRequest a qual não foi apresentada na atividade anterior nem mesmo na aula anterior.

 private function buscaDadosRequest(Request $request)
    {
        $queryString = $request->query->all();
        $dadosOrdenacao = array_key_exists('sort', $queryString)
            ? $queryString['sort']
            : null;
        unset($queryString['sort']);

       return [$queryString, $dadosOrdenacao];
    }

Existe alguma outra atividade que explique como utilizar o array_key_exists? Até então o código estava desta forma nas aulas anteriores:

private function buscaDadosRequest(Request $request) {
        $informacoesDeOrdenacao = $request->query->get('sort');
        $informacoesDeFiltro= $request->query->all();
        unset($informacoesDeFiltro['sort']);

        return [$informacoesDeOrdenacao, $informacoesDeFiltro];
    }
2 respostas

Olá, Eugênio.

Realmente eu deixei passar essa modificação que fiz por trás das câmeras. Perdão.

Mas a função array_key_exists faz exatamente o que seu nome diz. Ela verifica se a chave passada por parâmetro existe no array passado por parâmetro.

Logo, array_key_exists('sort', $queryString) verifica se a chave $queryString['sort'] existe.

Utilizo o operador ternário para verificar se ela existe, e caso não exista, atribuo o valor null à variável.

Mas recomendo seguir a segunda abordagem (que foi explicada no curso), por ser mais simples e funcionar exatamente da mesma forma.

:-)

De novo, desculpa por ter deixado isso passar despercebido.

Olá, Eugênio.

Conseguiu entender a explicação?