title: __call equivalent for public methods
body: <p>I have an API for interacting with my web app, defined by a class. Each publicly accessible method needs to have authentication done before running. Rather than putting the same line over and over in each method, I'd like to use the magic __call function. However, it will only work on private or protected methods, and mine need to be public in order to work with Zend_Json_Server.</p>
  
  <pre><code>class MY_Api
  {
    public function __call($name, $arguments)
    {
      //code here that checks arguments for valid auth token and returns an error if false
    }
  
    public function myFunction($param1, $param2, $param3)
    {
      //do stuff when the user calls the myFunction and passes the parameters
      //this function must remain public so that Zend_Json_Server can parse it
      //but I want it intercepted by a magic method so that the authentication
      //can be checked and the system bails before it even gets to this function.
    }
  }
  </code></pre>
  
  <p>Is it possible to hook into these public functions and possibly cancel their execution before they are called?</p>