title: Is a HTTP 500 Error normal to display as a result from a semicolon omission in PHP?
body: <p>Given the following code: </p>
  
  <pre><code>&lt;!DOCTYPE html&gt;
  &lt;html lang="en"&gt;
  &lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;meta http-equiv="X-UA-Compatible" content="ie=edge"&gt;
    &lt;title&gt;Index PHP&lt;/title&gt;
  &lt;/head&gt;
  &lt;body&gt;
  &lt;?php
  class Student {
  
  }
  
  
  $classes = get_declared_classes();
  echo "Classes:" . implode(',', $classes) . "&lt;br/&gt;";
  
  $class_names = ["Product", "Student", "student"];
  foreach($class_names as $class_name) {
    if(class_exists($class_name)) {
      echo "{$class_name} is a declared class. &lt;br /&gt;";
    } else {
      echo "{$class_name} is not a declared class &lt;br/&gt; ";
    }
    }
  ?&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>If I omit any of the semicolons, PHP emits a <code>HTTP ERROR 500</code>, and doesn't even attempt to open the file. This does seem to go against the previous languages that I know (JS, Ruby), that will at least display the webpage, then throw an error if necessary. </p>
  
  <p>My question is, if a semicolon is omitted, is the resulting HTTP ERROR 500 a result of the language's design, or a result of my PHP configuration (using MAMP)? </p>