Sobre o PHP (Hypertext Preprocessor), considere dispor de 2 ...
Indique a alternativa que codifica corretamente o que foi descrito.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: B - $garagem = array_combine($marca,$carros);
Na programação PHP, trabalhamos frequentemente com arrays, que são estruturas de dados capazes de armazenar múltiplos valores. A questão apresenta um cenário onde você tem duas arrays distintas, uma com as marcas de fabricantes de veículos (chaves) e outra com os modelos dos veículos (valores), e é necessário criar uma terceira array que associe as marcas aos modelos correspondentes.
Para realizar essa tarefa existe uma função muito útil no PHP chamada array_combine()
. Esta função recebe duas arrays como argumentos: a primeira array fornece as chaves e a segunda os valores para a nova array combinada. Assim, para cada par de elementos correspondentes das duas arrays fornecidas, a função cria um elemento na array resultante, onde o elemento da primeira array é a chave e o elemento da segunda array é o valor.
No contexto da questão, a utilização correta dessa função é demonstrada na alternativa B, onde $marca
é a array com as marcas dos veículos e $carros
é a array com os modelos. Assim, a linha de código:
$garagem = array_combine($marca,$carros);
resultará em uma array chamada $garagem
onde cada marca de veículo da array $marca
é associada ao respectivo modelo na array $carros
. Por exemplo, "VW" será associado a "Golf", "BMW" a "M340i", e "GM" a "F250".
As outras alternativas não realizam essa associação corretamente:
array_slice()
é usado para extrair uma fatia de uma array.array_merge()
é usado para mesclar duas ou mais arrays, mas não para associar chaves e valores como foi pedido.
Portanto, é essencial entender as funções disponíveis para manipular arrays em PHP para resolver problemas como este e escolher sabiamente a função correta para o resultado desejado.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
array_slice(): fatiar. Retorna parte de um array
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2)); //Array ( [0] => blue [1] => yellow [2] => brown )
array_combine(): cria um novo array usando elementos de um como chave de outro
$fname=array("Peter","Ben","Joe");
$age=array("35","37","43");
//combine = ( [Peter] => 35 [Ben] => 37 [Joe] => 43 )
array_merge(): mescla dois arrays em um único
$a1=array("red","green");
$a2=array("blue","yellow");
merge = ( [0] => red [1] => green [2] => blue [3] => yellow )
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo