PHP online - IDE, editor, compilatore, interprete

RSS

Esegui script PHP 8 online con un vero interprete PHP compilato in WebAssembly. Ottimo per testare snippet, array e funzioni per stringhe e JSON.

PHP 8 (php-wasm) · Funziona nel tuo browser, quindi il tuo codice non raggiunge mai i nostri server.
main.phpPHP
Output

            
        
Ctrl/⌘ + Enter per eseguire

Funzionalità del compilatore PHP online (IDE, editor e interprete)

Scrivi, esegui e testa codice PHP online gratis. Questa pagina è al tempo stesso IDE PHP online, editor di codice, compilatore e interprete: scrivi il codice, premi Esegui e vedi subito l'output. Tutto funziona nel tuo browser, senza nulla da installare e senza creare un account.

  • Esecuzione immediata: PHP 8 (php-wasm), con output in meno di un secondo dopo il primo caricamento.
  • Editor di codice: evidenziazione della sintassi, numeri di riga, corrispondenza e chiusura automatica delle parentesi.
  • Errori chiari: messaggi di errore e avvisi compaiono nel pannello di output, come sul tuo computer.
  • Schermo intero: Ctrl/⌘ + Shift + F, dimensione del carattere regolabile, layout affiancato o impilato e pannelli ridimensionabili.
  • Salvataggio automatico: il tuo codice resta nel browser; scaricalo come main.php o copialo con un clic.
  • Sperimenta in sicurezza: un limite di tempo e un pulsante Interrompi fermano i cicli infiniti.
  • Privato: il runtime PHP funziona sul tuo dispositivo, quindi il codice non viene mai caricato.
  • Modalità scura e scorciatoie da tastiera: Ctrl/⌘ + Enter esegue il codice.
  • Gratis: nessuna registrazione, nessun limite di utilizzo.

Impara altri linguaggi di programmazione

Come usare il compilatore PHP online

  1. Scrivi o incolla uno script PHP nell'editor. Il tag di apertura <?php è facoltativo; se il tuo codice non contiene alcun tag PHP, viene aggiunto per te. Funzionano anche i template che mescolano HTML e blocchi <?php ... ?>. Ripristina esempio riporta il codice iniziale.
  2. Premi Esegui oppure usa Ctrl + Invio (⌘ + Invio su Mac).
  3. Tutto ciò che lo script produce con echo, print, printf o var_dump appare nel pannello Output. Avvisi ed errori fatali sono evidenziati.
  4. Scegli un limite di tempo di 5, 15 o 60 secondi. Gli script che durano di più vengono interrotti automaticamente, e Interrompi ferma subito l'esecuzione.

La prima esecuzione scarica l'interprete PHP, circa 12 MB. Il browser lo mette in cache, quindi le esecuzioni successive partono molto più in fretta. Usa Copia o main.php per conservare lo script.

PHP viene eseguito in locale nel tuo browser, quindi il tuo codice non viene mai inviato né salvato sui nostri server. L'editor ricorda il tuo ultimo script nel local storage del browser e in nessun altro posto.

Cosa è supportato

Il compilatore usa PHP 8 tramite php-wasm, l'interprete PHP compilato in WebAssembly. Non è una simulazione: il tuo codice viene eseguito da PHP stesso.

  • Sintassi PHP 8: proprietà tipizzate, union type, espressioni match, argomenti con nome, arrow function (fn), operatore nullsafe (?->) ed enum dove la versione inclusa li supporta.
  • Funzioni di base per stringhe (str_contains, sprintf, explode), array (array_map, usort, array_filter), matematica e date.
  • JSON con json_encode e json_decode.
  • Espressioni regolari con le funzioni preg_*.
  • Classi, interfacce, trait, closure, generatori ed eccezioni.

Limitazioni:

  • Nessuna estensione di rete: curl, socket e richieste HTTP non sono disponibili.
  • Nessun server di database: non c'è MySQL o PostgreSQL a cui connettersi. Per esercitarti con SQL usa il compilatore SQL online.
  • Nessun contesto di web server: $_GET, $_POST, sessioni e cookie non ricevono dati reali di richiesta, e l'output HTML viene mostrato come testo, non renderizzato.
  • Nessun pacchetto Composer e nessuno standard input.

Riferimento rapido PHP

<?php
$prices = ['apple' => 1.20, 'bread' => 2.50, 'milk' => 0.99];

$expensive = array_filter($prices, fn($p) => $p > 1);
arsort($expensive);

foreach ($expensive as $item => $price) {
    printf("%-6s %5.2f\n", $item, $price);
}

$label = match (true) {
    count($prices) > 2 => 'big basket',
    default            => 'small basket',
};
echo $label, PHP_EOL;
echo json_encode($prices, JSON_PRETTY_PRINT), "\n";
OperazioneSintassi
Variabile$name = "Ada";
Interpolazione di stringhe"Hello, {$name}!"
Array associativo$a = ['key' => 'value'];
Ciclo su chiavi e valoriforeach ($a as $k => $v) { }
Ispezionare un valorevar_dump($x); oppure print_r($x);
Null coalescing$v = $a['x'] ?? 'default';

Consigli

  • Termina le righe con "\n" o PHP_EOL; echo non aggiunge da solo un a capo.
  • Usa print_r($array) per una vista compatta degli array annidati, oppure var_dump() quando servono anche tipi e lunghezze.
  • Per un JSON leggibile passa JSON_PRETTY_PRINT, oppure incolla l'output nel formattatore JSON per validarlo.
  • Ogni esecuzione avvia un interprete nuovo, quindi variabili e funzioni dell'esecuzione precedente non vengono conservate.
Suggerimento: stai testando un pattern preg_match? Costruiscilo e correggilo prima nel tester regex, poi incollalo tra i delimitatori, per esempio '/^\d+$/'.

Domande frequenti

Devo iniziare il codice con <?php?

No. Se lo script non contiene alcun tag <?php, ne viene aggiunto uno automaticamente. Puoi anche scrivere HTML con blocchi <?php ... ?> incorporati, esattamente come in un file .php su un web server.

Posso connettermi a MySQL?

No. L'interprete gira nel tuo browser senza accesso alla rete né a un server di database. Per esercitarti con SQL, il compilatore SQL ti offre un vero database SQLite nel browser.

Perché curl o file_get_contents() con un URL non funzionano?

Le estensioni di rete non sono incluse in questa build WebAssembly, e i browser non permettono connessioni di rete dirette da una sandbox come questa.

È come eseguire PHP su un server?

Per le funzionalità del linguaggio e le funzioni per stringhe, array e JSON sì: è il vero motore PHP. Tutto ciò che dipende da un web server, da estensioni o dalla rete si comporta diversamente.

Aggiornato

Copiato negli appunti