Questão nº 31
Questão de Tecnologia da Informação · CESGRANRIO BASA 01/2018 (nº 31)
O comando PHP que cria corretamente um vetor ou conjunto (array) associativo é:
- A
$pessoa=array(''Nome'':''Ana'',''Idade'':''52'',''Cidade'':''Manaus''); - B
$pessoa=array(''Nome'':=''Ana'',''Idade'':=''52'',''Cidade'':=''Manaus''); - C
$pessoa=array(''Nome''=''Ana'',''Idade''=''52'',''Cidade''=''Manaus''); - D
$pessoa=array(''Nome''=>''Ana'',''Idade''=>''52'',''Cidade''=>''Manaus'');(alternativa correta) - E
$pessoa=array(''Nome''->''Ana'',''Idade''->''52'',''Cidade''->''Manaus'');
Resposta comentada
Gabarito Alternativa D
Conceito-chave: Em PHP, um array associativo é uma lista onde cada item tem uma chave (texto, como 'Nome') e um valor (como 'Ana'), ligados pelo operador => (lê-se "aponta para"). É assim que você diz: "a chave 'Nome' guarda o valor 'Ana'".
- (A) Incorreta: Usa dois-pontos (
:) entre chave e valor, que é sintaxe de outros contextos (ex.: JSON), não de array PHP. - (B) Incorreta: Usa
:=(atribuição com referência em outras linguagens), que não existe para criar array associativo em PHP. - (C) Incorreta: Usa
=(atribuição simples), que não define a relação chave→valor dentro dearray(); isso geraria erro de sintaxe. - (D) Correta: É o gabarito oficial — usa o operador
=>, que é exatamente o que o PHP exige para associar chave a valor em um array. - (E) Incorreta: Usa
->(operador de acesso a propriedade de objeto), que não serve para arrays associativos.
Armadilha da banca: A alternativa (C) é a mais tentadora, pois = parece "natural" para quem está acostumado com atribuição em outras linguagens. Mas em PHP, dentro de array(), o = não cria a associação chave→valor — ele tentaria atribuir um valor a uma constante inexistente, causando erro fatal. A banca explora exatamente esse "achismo" de quem não domina o operador específico =>.
Fonte: CESGRANRIO BASA 01/2018 Técnico Científico - Área de Formação: Tecnologia da Informação. Reproduzida para fins de estudo.