JSON, come crearlo

Post apparentemente semplice, ma vale la pena spendere qualche riga su come progettare e realizzare un file JSON che può essere esposto da uno script PHP e interpretato da un codice JavaScript.

Cos’è JSON?

E’ un sistema leggero di scambio dati tra servizi e software eterogenei. La sua sintassi è molto simile a quella di JabvaScript poiché, non a caso, è il linguaggio con cui è più facile intuire si gestiscano i file JSON pubblicati ed esposti da altri servizi di backend magari con pagine PHP o Java o Python. L’acronimo sta per Javascript Object Notation. E’ il sostituto ideale di XML, quest’ultimo spesso relegato ai servizi SOAP più complessi, mentre JSON è leggero, intuitivo e decisamente più semplice da utilizzare. E’ formalmente indipendente dal linguaggio di programmazione che lo tratta. I dati sono autodescritti con i nomi dei campi.

Perché JSON

La domanda è lecita per lo studente alle prime armi. Sui banchi di scuola la prima cosa che si impara è interrogare il database con una quesry ed ad usare un linguaggio stile PHP a mostrare attraverso tabelle o simili i dati appena raccolti dalla interrogazione. Il codice PHP è ovviamente chiuso e i dati sono formattati con abbellimenti e stili grafici integrati nella pagina risultante. Questo è ottimo ma se quella query la volessi riutilizzare non solo con una pagina PHP ma anche da una app che grafica quelle informazioni con un codice o linguaggio completamente diverso? Perché allora non cercare un formato dati semplice che contenga la descrizione del dato e il dato stesso così che, se reso pubblico, tutti i vari back-end possano raggiungerlo? Le info JSON esposte possono pi essere consumate da uno script PHP, da una pagina HTML con Javascript o qualsiasi altro linguaggio di programmazione.

Tipi consentiti

Che dati possiamo catalogare?

  • Numeri interi o decimali (con il punto tipo 1.23)
  • Testo (tra virgolette doppie)
  • Booleano (true o false)
  • Un vettore semplice o associativo (con le parentesi quadre)
  • Un oggetto ulteriore purché racchiuso da altre parentesi graffe
  • Il valore null

Sintassi

La creazione di un file JSON non è difficile. Occorre una pianificazione di cosa mostrare in base alla base di dati o sistema aggregato di dati da cui provengono le informazioni. Le regole e la sintassi da seguire sono poche.

  • Ogni dato è una coppia nome descrittivo del dato/valore del dato
  • I dati sono separati da virgole
  • Le parentesi graffe raggruppano oggetti, ovvero gruppi di dati
  • Le parentesi quadre inglobano vettori di dati

Vediamo un primo esempio che racchiude le regolette appena descritte:

{
  "nome": "Alfredo",
  "cognome": "Centinaro",
  "indirizzo": "via villa mosca 47b",
  "datanascita": {
              "giorno": 2,
              "mese": 1,
              "anno": 1982
            },
  "celibe": false,
  "colori": ["verde", "rosso", "arancio"],
  "titolodistudio": null
  
}

Parser online

Ce ne sono diversi, uno dei più semplici https://jsoneditoronline.org/ o https://jsonformatter.org/json-parser che crea una finestra doppia affiancata in cui potete vedere codice JSON e albero risultante con tanto di debugger. Se salvate i dati su file con estensione .json, potete addirittura aprirli con un browser che ne evidenzierà in molti casi la sintassi.

Ultima modifica 22 Aprile 2022