Example #1
0
File: core.php Project: umaxfun/x4m
 /**
  * Вызвать методо из опрежделенного неймспейса
  * 
  * @param string $ns  - название неймспейса
  * @param string $method - метод который необходимо вызвать из определенного интерфейса
  * @param mixed $arguments - обязательно ассоциативный  масссив
  * @return mixed
  */
 public static function call($ns, $method, $arguments = null, $additionalArguments = null)
 {
     if (!method_exists(self::$nameSpaces[$ns][$method], $method)) {
         $nsExpl = explode('.', $ns);
         if ($wakeUpFunction = self::$callModeles[$nsExpl[0]]) {
             $wakeUpFunction($nsExpl);
         }
     }
     if (method_exists(self::$nameSpaces[$ns][$method], $method)) {
         self::$lastInstance = self::$nameSpaces[$ns][$method];
         $result = call_user_func_array(array(self::$nameSpaces[$ns][$method], $method), array($arguments, $additionalArguments));
         if (!$result) {
             return true;
         } else {
             return $result;
         }
     } else {
         return null;
     }
 }