diff --git a/language/errors.xml b/language/errors.xml
new file mode 100644
index 00000000..74de52a5
--- /dev/null
+++ b/language/errors.xml
@@ -0,0 +1,40 @@
+
+
+
+ Errori
+
+
+ Introduzione
+
+
+ Purtroppo, per quanto si presti attenzione nella scrittura del codice, gli errori sono una
+ realtà inevitabile. PHP segnala errori, avvisi e notifiche per molti problemi comuni
+ di codifica e di runtime, e sapere come rilevare e gestire questi
+ errori renderà il debug molto più semplice.
+
+
+
+ &language.errors.basics;
+ &language.errors.php7;
+
+
+
diff --git a/language/errors/basics.xml b/language/errors/basics.xml
new file mode 100644
index 00000000..de4df19d
--- /dev/null
+++ b/language/errors/basics.xml
@@ -0,0 +1,99 @@
+
+
+
+
+ Nozioni di base
+
+
+ PHP segnala gli errori in risposta a una serie di condizioni di errore interne.
+ Questi possono essere utilizzati per segnalare diverse condizioni e possono essere
+ visualizzati e/o registrati nei log come richiesto.
+
+
+
+ Ogni errore generato da PHP include un tipo. Un
+ elenco di questi tipi di errore è disponibile,
+ insieme a una breve descrizione del loro comportamento e di come possono essere
+ causati.
+
+
+
+ Gestione degli errori con PHP
+
+
+ Se non è impostato alcun gestore di errori, PHP gestirà ogni errore che si verifica
+ secondo la sua configurazione. Quali errori vengono segnalati e quali vengono
+ ignorati è controllato dalla direttiva php.ini
+ error_reporting,
+ o a runtime chiamando
+ error_reporting. Si raccomanda vivamente di impostare la
+ direttiva di configurazione, poiché alcuni errori possono verificarsi prima che
+ l'esecuzione dello script inizi.
+
+
+
+ In un ambiente di sviluppo, è consigliabile impostare sempre
+ error_reporting
+ a E_ALL, poiché è necessario essere a conoscenza dei
+ problemi segnalati da PHP e correggerli. In produzione, è possibile impostare un livello
+ meno verboso come
+ E_ALL & ~E_NOTICE & ~E_DEPRECATED, ma
+ in molti casi E_ALL è comunque appropriato, poiché può
+ fornire un avviso anticipato di potenziali problemi.
+
+
+
+ Ciò che PHP fa con questi errori dipende da altre due direttive php.ini.
+ display_errors
+ controlla se l'errore viene mostrato come parte dell'output dello script. Questo
+ dovrebbe essere sempre disabilitato in un ambiente di produzione, poiché può includere
+ informazioni riservate come le password del database, ma è spesso utile
+ abilitarlo in sviluppo, poiché garantisce la segnalazione immediata dei problemi.
+
+
+
+ Oltre a visualizzare gli errori, PHP può registrare gli errori nei log quando la direttiva
+ log_errors
+ è abilitata. Questo registrerà tutti gli errori nel file o nel syslog
+ definito da
+ error_log. Questo
+ può essere estremamente utile in un ambiente di produzione, poiché è possibile registrare gli errori
+ che si verificano e poi generare report basati su questi errori.
+
+
+
+
+ Gestori di errori personalizzati
+
+
+ Se la gestione degli errori predefinita di PHP è inadeguata, è possibile gestire anche molti
+ tipi di errore con un gestore di errori personalizzato installandolo con
+ set_error_handler. Anche se alcuni tipi di errore non possono essere
+ gestiti in questo modo, quelli che lo permettono possono essere gestiti nel modo
+ più appropriato per lo script: ad esempio, è possibile mostrare una pagina di errore
+ personalizzata all'utente e poi segnalare in modo più diretto rispetto a un log, come
+ l'invio di un'e-mail.
+
+
+
+
+
diff --git a/language/errors/php7.xml b/language/errors/php7.xml
new file mode 100644
index 00000000..a5810df8
--- /dev/null
+++ b/language/errors/php7.xml
@@ -0,0 +1,116 @@
+
+
+
+
+ Errori in PHP 7
+
+
+ PHP 7 cambia il modo in cui la maggior parte degli errori viene segnalata da PHP. Invece di segnalare
+ gli errori attraverso il meccanismo di segnalazione errori tradizionale utilizzato da PHP 5, la maggior
+ parte degli errori viene ora segnalata lanciando eccezioni Error.
+
+
+
+ Come per le eccezioni normali, queste eccezioni Error
+ risaliranno fino a raggiungere il primo blocco
+ catch corrispondente.
+ Se non ci sono blocchi corrispondenti, verrà chiamato qualsiasi gestore di eccezioni predefinito
+ installato con set_exception_handler,
+ e se non c'è un gestore di eccezioni predefinito, l'eccezione verrà
+ convertita in un errore fatale e gestita come un errore tradizionale.
+
+
+
+ Poiché la gerarchia Error non eredita da
+ Exception, il codice che utilizza blocchi
+ catch (Exception $e) { ... } per gestire le eccezioni non catturate
+ in PHP 5 non catturerà questi Error.
+ È necessario un blocco catch (Error $e) { ... }
+ o un gestore set_exception_handler.
+
+
+
+ Gerarchia di Error
+
+
+
+ Throwable
+
+
+ Error
+
+
+ ArithmeticError
+
+
+ DivisionByZeroError
+
+
+
+
+ AssertionError
+
+
+ CompileError
+
+
+ ParseError
+
+
+
+
+ TypeError
+
+
+ ArgumentCountError
+
+
+
+
+ ValueError
+
+
+ UnhandledMatchError
+
+
+ FiberError
+
+
+ RequestParseBodyException
+
+
+
+
+ Exception
+
+
+ ...
+
+
+
+
+
+
+
+
+
+
diff --git a/language/fibers.xml b/language/fibers.xml
new file mode 100644
index 00000000..e36b2ab1
--- /dev/null
+++ b/language/fibers.xml
@@ -0,0 +1,96 @@
+
+
+
+ Fiber
+
+
+ Panoramica sulle Fiber
+
+
+ Le Fiber rappresentano funzioni interrompibili con stack completo. Le Fiber possono essere sospese da qualsiasi punto nello stack delle chiamate,
+ mettendo in pausa l'esecuzione all'interno della fiber fino a quando la fiber non viene ripresa in un secondo momento.
+
+
+ Le Fiber mettono in pausa l'intero stack di esecuzione, quindi il chiamante diretto della funzione non ha bisogno di cambiare il modo in cui
+ invoca la funzione.
+
+
+ L'esecuzione può essere interrotta in qualsiasi punto dello stack delle chiamate utilizzando Fiber::suspend
+ (ovvero, la chiamata a Fiber::suspend può trovarsi in una funzione profondamente annidata oppure non
+ esistere affatto).
+
+
+ A differenza dei Generator senza stack, ogni Fiber ha il proprio stack delle chiamate,
+ consentendo di metterle in pausa all'interno di chiamate di funzione profondamente annidate. Una funzione che dichiara un punto di interruzione
+ (ovvero, che chiama Fiber::suspend) non ha bisogno di cambiare il proprio tipo di ritorno, a differenza di una funzione che utilizza
+ &yield; che deve restituire un'istanza di Generator.
+
+
+ Le Fiber possono essere sospese in qualsiasi chiamata di funzione, incluse quelle chiamate dall'interno della VM PHP, come le funzioni
+ fornite a array_map o i metodi chiamati da &foreach; su un
+ oggetto Iterator.
+
+
+ Una volta sospesa, l'esecuzione della fiber può essere ripresa con qualsiasi valore utilizzando Fiber::resume
+ o lanciando un'eccezione nella fiber utilizzando Fiber::throw. Il valore viene restituito
+ (o l'eccezione viene lanciata) da Fiber::suspend.
+
+
+
+ Prima di PHP 8.4.0, il cambio di fiber durante l'esecuzione di un
+ distruttore di oggetto non era
+ consentito.
+
+
+
+
+ Utilizzo di base
+
+ start();
+
+echo "Value from fiber suspending: ", $value, PHP_EOL;
+
+$fiber->resume('test');
+?>
+]]>
+
+ &example.outputs;
+
+
+
+
+
+
+
+
+
+