3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php /** * Abstract Surfer Class * * @package hangten */ abstract class Surfer { abstract protected function rideWave($amplitude); public function applyWax($waxType){ echo("Ahh, all waxed up with '".$waxType."'. Ready to go!"); } public function paddleOut(){ echo("Paddling...."); } public function screamShark(){ echo("SHARK!!"); } } /** * RookieSurfer Class * * This surfer is green and can barely surf. * @package hangten */ class RookieSurfer extends Surfer { protected function rideWave($amplitude = 1){ echo("Trying.. Trying.. to ride a ".$amplitude."ft. wave, whew!"); } } /** * ProSurfer Class * * This surfer is crazy skilled!! * @package hangten */ class ProSurfer extends Surfer { protected function rideWave($amplitude = 8){ echo("Riding a ".$amplitude."ft. wave backwards doing a backflip!"); } public function killSharkWithBoard(){ echo("totally just sliced that shark in two!! booya!"); } } $rookie = new RookieSurfer; $rookie->applyWax("Candle Wax") $rookie->paddleOut(); $rookie->rideWave(2); $rookie->screamShark(); $pro = new ProSurfer; $pro->applyWax("Sex Wax"); $pro->paddleOut(); $pro->rideWave(50); $pro->killSharkWithBoard();
Output for 5.4.0 - 5.4.10
Parse error: syntax error, unexpected '$rookie' (T_VARIABLE) in /in/oqVjh on line 58
Process exited with code 255.
Output for 5.3.0 - 5.3.20
Parse error: syntax error, unexpected T_VARIABLE in /in/oqVjh on line 58
Process exited with code 255.