Exemple #1
0
 /**
  * Load server definition from a file
  *
  * Unserializes a stored server definition from $filename. Returns false if
  * it fails in any way, true on success.
  *
  * Useful to prevent needing to build the server definition on each
  * request. Sample usage:
  *
  * <code>
  * if (!Zend_Server_Cache::get($filename, $server)) {
  *     require_once 'Some/Service/Class.php';
  *     require_once 'Another/Service/Class.php';
  *
  *     // Attach Some_Service_Class with namespace 'some'
  *     $server->attach('Some_Service_Class', 'some');
  *
  *     // Attach Another_Service_Class with namespace 'another'
  *     $server->attach('Another_Service_Class', 'another');
  *
  *     Zend_Server_Cache::save($filename, $server);
  * }
  *
  * $response = $server->handle();
  * echo $response;
  * </code>
  *
  * @param  string $filename
  * @param  Zend_Server_Interface $server
  * @return bool
  */
 public static function get($filename, Zend_Server_Interface $server)
 {
     if (!is_string($filename) || !file_exists($filename) || !is_readable($filename)) {
         return false;
     }
     if (false === ($dispatch = @file_get_contents($filename))) {
         return false;
     }
     if (false === ($dispatchArray = @unserialize($dispatch))) {
         return false;
     }
     $server->loadFunctions($dispatchArray);
     return true;
 }