Marcando uma Tarefa como Concluída
Parte da seção Fundamentos do Journey de PHP da Coddy. Lição 57 de 71.
Desafio
FácilNa lição anterior, você exibiu todas as tarefas com seu status. Agora, adicione a capacidade de marcar uma tarefa específica como concluída.
Leia quatro linhas de entrada para as descrições das tarefas (três tarefas iniciais mais uma nova tarefa, como antes). Em seguida, leia uma quinta entrada: um inteiro que representa o índice da tarefa a ser marcada como concluída (baseado em 0).
Depois de criar o $todos array com as quatro tarefas, atualize o valor "completed" para true na tarefa do índice especificado.
Em seguida, percorra o array e imprima cada tarefa no seguinte formato:
- Se a tarefa estiver concluída:
- [task description] (Done) - Se a tarefa estiver pendente:
- [task description] (Pending)
Imprima cada tarefa em uma linha separada.
Exemplo:
Se as entradas forem Buy groceries, Walk the dog, Finish homework, Call mom e 1, a saída deverá ser:
- Buy groceries (Pending)
- Walk the dog (Done)
- Finish homework (Pending)
- Call mom (Pending)Se as entradas forem Clean room, Read book, Exercise, Cook dinner e 3, a saída deverá ser:
- Clean room (Pending)
- Read book (Pending)
- Exercise (Pending)
- Cook dinner (Done)Experimente você mesmo
<?php
// Coleção de tarefas predefinida
$tasks = [
[
"description" => "Buy groceries",
"completed" => false
],
[
"description" => "Walk the dog",
"completed" => true
],
[
"description" => "Read a book",
"completed" => false
],
[
"description" => "Exercise",
"completed" => false
]
];
// Ler entrada
$taskIndex = trim(fgets(STDIN));
$newStatus = trim(fgets(STDIN));
// TODO: Escreva seu código abaixo
// Converta as entradas para os tipos apropriados e atualize a tarefa
// Exiba a mensagem da tarefa atualizada
// Exiba todas as tarefas com seu status
// Exiba o resumo com contagens total, concluídas e pendentes
?>Todas as lições de Fundamentos
4Operadores de Comparação e Lógicos
Operadores de ComparaçãoIgualdade e IdentidadeOperadores Lógicos - Parte 1Operadores Lógicos - Parte 2Revisão - Lógica Simples2Variáveis e Tipos de Dados
NúmerosStrings e AspasBooleanosConvenções de NomenclaturaRevisão - Inicialização de VariáveisVariáveis VaziasConcatenação de StringsObtendo Entrada do UsuárioConversão para Diferentes Tipos5Lógica Condicional
Instrução IfIf - ElseO Operador TernárioOperador de Coalescência NulaInstrução SwitchRecapitulação - Tomando Decisões3Operadores Básicos
Operadores AritméticosOperador MóduloOperador de ExponenciaçãoAtribuição CombinadaIncremento/DecrementoPrecedência de OperadoresRevisão - Cálculos SimplesOperadores de String6Arrays Parte 1 - Indexados
Introdução a ArraysCriando Arrays IndexadosAcessando Elementos por ÍndiceModificando Elementos por ÍndiceTamanho do Array com CountAdicionando Elementos a um ArrayRecapitulação - Gerenciando uma Lista Simples9Projeto: Lista de Tarefas Simples
Visão Geral e Dados do ProjetoAdicionando uma Nova TarefaPratique por conta própria: Compilador de PHP online