Ejemplo n.º 1
0
 protected static function initialize($force = false)
 {
     if (self::$initialized && !$force) {
         return;
     }
     self::$originalphps = array();
     $knowndirs = array('autoload', 'bin', 'cronjobs', 'kernel', 'lib', 'update');
     foreach ($knowndirs as $phpdir) {
         self::$originalphps = array_merge(self::$originalphps, self::scanDirForphps($phpdir, true));
     }
     self::$extensionphps = array();
     $extensionsdir = eZExtension::baseDirectory();
     $ini = eZINI::instance('site.ini');
     /// @todo take this from an ini too, to allow user to add more known php files dirs
     foreach ($ini->variable('ExtensionSettings', 'ActiveExtensions') as $extdir) {
         self::$extensionphps = array_merge(self::$extensionphps, self::scanDirForphps("{$extensionsdir}/{$extdir}", true));
     }
     $php = 'php';
     exec($php . ' -v', $output);
     if (count($output) && strpos($output[0], 'PHP') !== false) {
         self::$php = $php;
     }
     self::$initialized = true;
 }