當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Autoloader::setRootPath方法代碼示例

本文整理匯總了PHP中Autoloader::setRootPath方法的典型用法代碼示例。如果您正苦於以下問題:PHP Autoloader::setRootPath方法的具體用法?PHP Autoloader::setRootPath怎麽用?PHP Autoloader::setRootPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Autoloader的用法示例。


在下文中一共展示了Autoloader::setRootPath方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: setRootPath

    protected static $_appInitPath = '';
    public static function setRootPath($root_path)
    {
        self::$_appInitPath = $root_path;
    }
    /**
     * 根據命名空間加載文件
     *
     * @param string $name        	
     * @return boolean
     */
    public static function loadByNamespace($name)
    {
        // 相對路徑
        $class_path = str_replace('\\', DIRECTORY_SEPARATOR, $name);
        $class_file = self::$_appInitPath . '/' . $class_path . '.php';
        // 找到文件
        if (is_file($class_file)) {
            // 加載
            require_once $class_file;
            if (class_exists($name, false)) {
                return true;
            }
        }
        return false;
    }
}
$doc_root = dirname(__DIR__);
Autoloader::setRootPath($doc_root . '/src');
// 設置類自動加載回調函數
spl_autoload_register('Autoloader::loadByNamespace');
開發者ID:amlun,項目名稱:phptools,代碼行數:31,代碼來源:autoload.php

示例2: run

 /**
  * 運行worker實例
  */
 public function run()
 {
     //更新 Worker 狀態
     self::$_status = self::STATUS_RUNNING;
     // 注冊進程退出回調,用來檢查是否有錯誤
     register_shutdown_function(array("Worker", 'checkErrors'));
     // 設置自動加載根目錄
     Autoloader::setRootPath($this->_appInitPath);
     // 如果沒有全局事件輪詢,則創建一個
     if (!self::$globalEvent) {
         if (extension_loaded('libevent')) {
             self::$globalEvent = new Libevent();
         } else {
             self::$globalEvent = new Select();
         }
         // 監聽_mainSocket上的可讀事件(客戶端連接事件)
         if ($this->_socketName) {
             if ($this->transport !== 'udp') {
                 self::$globalEvent->add($this->_mainSocket, EventInterface::EV_READ, array($this, 'acceptConnection'));
             } else {
                 self::$globalEvent->add($this->_mainSocket, EventInterface::EV_READ, array($this, 'acceptUdpConnection'));
             }
         }
     }
     // 重新安裝事件處理函數,使用全局事件輪詢監聽信號事件
     self::reinstallSignal();
     // 用全局事件輪詢初始化定時器
     Timer::init(self::$globalEvent);
     // 如果有設置進程啟動回調,則執行
     if ($this->onWorkerStart) {
         call_user_func($this->onWorkerStart, $this);
     }
     // 子進程主循環
     self::$globalEvent->loop();
 }
開發者ID:lisonglin0129,項目名稱:LDFRAMEWORK,代碼行數:38,代碼來源:Worker.php


注:本文中的Autoloader::setRootPath方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。