3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php interface SellableItems{ public function addItem(); public function removeItem(); } class tennisBall implements SellableItems{ public static $count=0; public function addItem(){ return self::$count++; } public function removeItem(){ if(self::count>0){ return self::count--; } else { echo "<br/>Sorry, Stock empty"; } } public function ShowData(){ echo "<br/>There are ".self::$count." ".__CLASS__; } } class tv implements SellableItems{ static $count=0; public function addItem(){ return self::count++; } public function removeItem(){ if(self::count>0){ return self::count--; } else { echo "<br/>Sorry, Stock empty"; } } public function ShowData(){ echo "<br/>There are ".self::$count." ".__CLASS__; } } class StoreFactory{ public static function factory($item){ switch($item){ case "tennisBall": $product=new tennisBall(); break; case "tv": $product=new tv(); break; default: die("<br/>WRONG Choice OF PRODUCT: {$item}"); } if($product instanceof SellableItems){ return $product; } else{ die("</br>Sory cannot create particular Product"); } } } $Instance=StoreFactory::factory("tennisBall"); $Instance->addItem(); $Instance->addItem(); $Instance->ShowData();
Output for 5.4.0 - 5.4.31
Parse error: syntax error, unexpected '--' (T_DEC) in /in/CdaQT on line 18
Process exited with code 255.
Output for 5.1.0 - 5.3.28
Parse error: syntax error, unexpected T_DEC in /in/CdaQT on line 18
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_DEC in /in/CdaQT on line 18
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/CdaQT on line 4
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING in /in/CdaQT on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/CdaQT on line 4
Process exited with code 255.