title: Why isn't my Exception being caught by catch?
body: <p>I have some code that looks like this</p>
  
  <pre><code># Try to import file
  try
  {
      DataManager::fileImport($_FILES['datafile']['tmp_name'], 
                              $_POST['zones'], $_POST['statuses']);
  }
  catch(Exception $e)
  {
      print 'Herp.';
      $response-&gt;body = Helpers::getVarDump($e);
  }
  </code></pre>
  
  <p><code>DataManager::fileImport</code> is literally a one-line function that throws a normal Exception:</p>
  
  <pre><code>static function fileImport($filepath, $zones, $statuses)
  {
      throw new Exception('SOME EXCEPTION');
  }
  </code></pre>
  
  <p>And yet I get</p>
  
  <blockquote>
    <p>Fatal error: Uncaught exception 'Exception' with message 'SOME EXCEPTION'...</p>
  </blockquote>
  
  <p>From the try block. Also 'Herp.' is never printed. Why doesn't the Exception trigger the catch block?</p>
  
  <hr>
  
  <p>EDIT: I should mention I'm using <a href="https://github.com/peej/tonic">Tonic</a> and PHP 5.3.9</p>
  
  <p>EDIT AGAIN: Here's DataManager (with names replaced with ... for anonymity) <a href="http://pastebin.com/daHWBJDC">http://pastebin.com/daHWBJDC</a></p>