Configuração do Projeto: Estrutura de Dados
Parte da seção Lógica & Fluxo do Journey de PHP da Coddy — lição 33 de 68.
Desafio
FácilVocê receberá uma entrada: um objeto JSON representando um livro de notas de alunos. O livro de notas usa nomes de alunos como chaves, e cada aluno possui um array associativo contendo seu "id" (número de ID do aluno) e "grades" (um array de suas notas de testes). Leia a entrada, converta a string JSON em um array associativo 2D e imprima toda a estrutura do livro de notas usando print_r().
Esta estrutura de dados servirá como base para o sistema de livro de notas que você construirá ao longo deste projeto.
Formato de entrada: Uma linha contendo um objeto JSON representando o livro de notas (exemplo: {"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]},"Charlie":{"id":103,"grades":[76,84,89]}})
Saída esperada: O array do livro de notas exibido usando print_r()
Experimente você mesmo
<?php
// Ler a entrada JSON
$input = fgets(STDIN);
// TODO: Converter a string JSON para um array associativo
// TODO: Imprimir a estrutura do boletim usando print_r()
?>Todas as lições de Lógica & Fluxo
1Funções Avançadas
Funções AnônimasClosures e 'use'Arrow FunctionsFunções de CallbackUsando 'call_user_func'Funções VariáveisPassagem por ReferênciaFunções RecursivasRecapitulação: Mix de Funções4Arrays Multidimensionais
Criando um Array 2DAcessando Elementos de um Array 2DModificando Elementos de um Array 2DIterando com Loops AninhadosArrays Associativos 2DRecapitulação: Exercício de Grade Simples2Manipulações Avançadas de Arrays
Adicionando com 'array_push'Removendo com 'array_pop'Adicionando com 'array_unshift'Removendo com 'array_shift'Mesclando Arrays IndexadosMesclando Arrays AssociativosExtraindo com 'array_slice'Valores com 'in_array'Chaves com 'array_search'Recapitulação: Exercício de Playlist5Boletim de Alunos
Configuração do Projeto: Estrutura de DadosAdicionando um Novo AlunoAdicionando uma Nota a um AlunoCalculando a Média do AlunoEncontrando o Melhor AlunoGerando um Boletim3Ordenação de Arrays
Ordenar Arrays Indexados (Crescente)Ordenar Arrays Indexados (Decrescente)Ordenar Arrays Associativos por ValorOrdenar Arrays Associativos por ChaveOrdenação por Ordem NaturalOrdenação Personalizada com 'usort'Recapitulação: Ordenação de Leaderboard