3v4l.org

run code in 300+ PHP versions simultaneously
<?php class IOException { protected $file; public function __construct($file, $message) { parent::__construct($message); $this->file = $file; } public function getFile() { return $this->file; } } class File { protected $path; protected $handle; public function __construct($path) { $this->path = $path; } public function open($mode) { $this->handle = @fopen($this->path, $mode); if (!$this->handle) { throw new IOException($this->path, "could not open the file"); } } } $file = new File("/no/file"); try { $file->open(); } catch (IOException $io) { $io->printStackTrace(); } ?>

preferences:
66.84 ms | 402 KiB | 5 Q