Sfida: Totale del carrello
Fa parte della sezione Logica e flusso del percorso PHP di Coddy. Lezione 67 di 68.
Sfida
FacileRiceverai un singolo input: una stringa JSON che rappresenta un array di articoli del carrello.
L'input sarà una stringa JSON in questo formato: [{"name":"Laptop","price":999.99,"quantity":1},{"name":"Mouse","price":25.50,"quantity":2},{"name":"Keyboard","price":75.00,"quantity":1}]
Leggi l'input e decodifica la stringa JSON in un array di articoli. Ogni articolo ha tre proprietà: name, price e quantity.
Calcola il costo totale del carrello moltiplicando il prezzo di ogni articolo per la sua quantità, quindi sommando tutti i risultati. Usa array_reduce() con una funzione di callback personalizzata per calcolare questo totale.
Dopo aver calcolato il totale, stampalo nel seguente formato:
Total: $[amount]
Formatta l'importo con esattamente 2 cifre decimali usando number_format().
Formato dell'input:
- Una singola riga contenente una stringa JSON che rappresenta l'array degli articoli del carrello, con le chiavi
name,priceequantity
Output previsto: Una singola riga che mostra il costo totale nel formato: Total: $[amount], dove l'importo è formattato con 2 cifre decimali
Provalo tu
<?php
// Leggi l'input JSON
$input = fgets(STDIN);
// Decodifica la stringa JSON in un array
$items = (array)json_decode($input, true);
// TODO: Scrivi il tuo codice qui sotto per calcolare il totale usando array_reduce()
// Stampa il risultato
echo "Total: $" . number_format($total, 2);
?>Tutte le lezioni di Logica e flusso
1Funzioni avanzate
Funzioni anonimeClosure e 'use'Funzioni frecciaFunzioni callbackUso di 'call_user_func'Funzioni variabiliPassaggio per riferimentoFunzioni ricorsiveRiepilogo: carrellata di funzioni4Array multidimensionali
Creare un array 2DAccedere agli elementi di un array 2DModificare gli elementi di un array 2DIterare con cicli annidatiArray associativi 2DRipasso: esercizio con una griglia semplice7Lavorare con date e orari
La funzione 'date()'Timestamp Unix con 'time()'Introduzione all'oggetto DateTimeFormattare gli oggetti DateTimeModificare gli oggetti DateTimeRiepilogo: calcoli con le date10Sfide finali
Sfida: Verifica dei palindromiSfida: Frequenza dei caratteriSfida: Totale del carrelloSfida: Filtro degli elementi unici2Manipolazioni avanzate degli array
Aggiungere con 'array_push'Rimuovere con 'array_pop'Aggiungere con 'array_unshift'Rimuovere con 'array_shift'Unire array indicizzatiUnire array associativiEstrarre con 'array_slice'Valori con 'in_array'Chiavi con 'array_search'Riepilogo: esercizio playlist3Ordinare gli array
Ordina gli array indicizzati in ordine crescenteOrdina gli array indicizzati in ordine decrescenteOrdina gli array associativi per valoreOrdina gli array associativi per chiaveOrdinamento naturaleOrdinamento personalizzato con 'usort'Ripasso: ordinamento della classificaEsercitati da solo: Compilatore PHP online