Run PHP 8.3 online
PHP 8.3 sharpened the type system and tidied up everyday tasks. Run it instantly in your browser — no install, no server, nothing uploaded. Open the playground, select 8.3, and Run. php.onl uses an official WebAssembly build, so you get genuine PHP 8.3 behaviour.
What's new in PHP 8.3
- Typed class constants — declare a type on a constant and have the engine enforce it:
const string VERSION = '1.0';. - Dynamic class constant fetch — read a constant by a runtime name:
$obj::{$constName}. - The
#[\Override]attribute — state that a method overrides a parent method, so a typo in the name becomes an error instead of a silent new method. json_validate()— check that a string is valid JSON without allocating the decoded structure, which is cheaper for large payloads.Randomizer::getBytesFromString()— generate random strings from a chosen alphabet using the new randomizer engine.- Clearer
DateTimeerrors — date/time failures throw typed exceptions instead of generic ones.
Try it in seconds
Paste this into the playground with 8.3 selected:
<?php
class Config {
const string ENV = 'production';
}
var_dump(json_validate('{"ok":true}')); // true
echo Config::ENV, PHP_EOL;
Compare 8.3 with newer releases
PHP 8.3 is a common production target, which makes it a perfect baseline to compare against. Run the same snippet on 8.3 and 8.4 or 8.5 at the same time — php.onl runs them in parallel and highlights any difference, so you can see exactly what a newer release changes before you upgrade. See all versions on the versions page.
Why run PHP 8.3 here
- Private — execution is local via WebAssembly; nothing is uploaded.
- Offline — the 8.3 runtime is cached after the first load.
- No signup — open the page and run.