3v4l.org

run code in 300+ PHP versions simultaneously
<?php define("ERROR_INVALID_NAME", "Ung&uuml;ltiger Name"); define("ERROR_INVALID_EMAIL_ADDRESS", "Ung&uuml;ltiges E-Mailformat"); define("ERROR_INVALID_STREET", "Ung&uuml;ltiger Strassenname"); define("ERROR_INVALID_POSTALCODE", "Ung&uuml;ltige Postleitzahl! Bitte nur Zahlen eingeben"); define("ERROR_INVALID_CITY", "Ung&uuml;ltige Stadt"); define("ERROR_INVALID_AMOUNT250", "Ung&uuml;ltige Menge bei 250g"); define("ERROR_INVALID_AMOUNT500", "Ung&uuml;ltige Menge bei 500g"); define("ERROR_INVALID_AMOUNT", "Die Gesamtmenge betr&auml;gt 0"); define("ERROR_INVALID_PRICE", "Ung&uuml;ltiger Preis"); define("ERROR_INVALID_DATUM", "Ung&uuml;ltiges Datum"); /** * Validator fuer die Eingabe des Kunden */ class Validator{ public $errorMessages; /** * Validiert die Eingabe. */ function validateInput($name, $email, $strasse, $plz, $stadt, $menge250g, $menge500g){ $this->validate($name, $email, $strasse, $plz, $stadt, $menge250g, $menge500g); return $this->isValid(); } /** * Validiert die Confirmation. */ function validateConfirmation($name, $email, $strasse, $plz, $stadt, $menge250g, $menge500g, $preis, $datum){ $this->validate($name, $email, $strasse, $plz, $stadt, $menge250g, $menge500g); // Menge gefuellt und numersich if($preis == ''){ array_push($this->errorMessages, ERROR_INVALID_PREIS); } // Menge gefuellt und numersich if($datum == ''){ array_push($this->errorMessages, ERROR_INVALID_DATUM); } return $this->isValid(); } /** * Validiert die Bestaetigungsparameter. */ function validate($name, $email, $strasse, $plz, $stadt, $menge250g, $menge500g){ $this->errorMessages = array(); // Name gefuellt if($name == ""){ array_push($this->errorMessages, ERROR_INVALID_NAME); } // Email Adresse korrekt if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $email)){ array_push($this->errorMessages, ERROR_INVALID_EMAIL_ADDRESS); } // Strasse gefuellt if($strasse == ""){ array_push($this->errorMessages, ERROR_INVALID_STREET); } // PLZ gefuellt und numerisch if(!ereg("^[0-9-]", $plz)){ array_push($this->errorMessages, ERROR_INVALID_POSTALCODE); } // Stadt gefuellt if($stadt == ""){ array_push($this->errorMessages, ERROR_INVALID_CITY); } // Menge250g gefuellt und numersich if(!ereg("^[0-9-]", $menge250g)){ array_push($this->errorMessages, ERROR_INVALID_AMOUNT250); } // Menge500g gefuellt und numersich if(!ereg("^[0-9-]", $menge500g)){ array_push($this->errorMessages, ERROR_INVALID_AMOUNT500); } if ($menge250g == 0.0 and $menge500g == 0.0){ array_push($this->errorMessages, ERROR_INVALID_AMOUNT); } return $this->isValid(); } /** * Erzeugt eine Message fuer die letzte Validierung, */ function getErrorMessages(){ $msg = "<span style='color:red'>Fehler, Sie haben nicht alle Felder korrekt ausgef&uuml;llt:"; // Erzeugte Fehlermeldungen einsammeln foreach ($this->errorMessages as $value) { $msg .= "<br /> - " . $value; } $msg .= "</span><br /><br />"; unset($value); return $msg; } /** * Ueberprueft, ob Fehler bei der Validierung aufgetreten sind. */ function isValid(){ if (count($this->errorMessages) == 0){ return true; } return false; } } ?>
Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/EASuZ on line 18
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/EASuZ on line 18
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/EASuZ on line 18
Process exited with code 255.

preferences:
230.96 ms | 401 KiB | 371 Q