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


PHP eZINI::setOverrideDirs方法代碼示例

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


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

示例1: getSettings

 public function getSettings()
 {
     // Copied from settings/view
     $rootDir = 'settings';
     $iniFiles = eZDir::recursiveFindRelative($rootDir, '', '.ini');
     // find all .ini files in active extensions
     // Note: is this the same algorithm used by ezini? mmm...
     foreach (eZINI::globalOverrideDirs() as $iniDataSet) {
         $iniPath = $iniDataSet[1] ? $iniDataSet[0] : 'settings/' . $iniDataSet[0];
         $iniFiles = array_merge($iniFiles, eZDir::recursiveFindRelative($iniPath, '', '.ini'));
         $iniFiles = array_merge($iniFiles, eZDir::recursiveFindRelative($iniPath, '', '.ini.append.php'));
     }
     // extract all .ini files without path
     $iniFiles = preg_replace('%.*/%', '', $iniFiles);
     // remove *.ini[.append.php] from file name
     $iniFiles = preg_replace('%\\.ini.*%', '.ini', $iniFiles);
     $iniFiles = array_unique($iniFiles);
     sort($iniFiles);
     $siteIni = null;
     foreach ($iniFiles as $key => $ini) {
         if ($this->currentSiteAccess != '' && $GLOBALS['eZCurrentAccess']['name'] !== $this->currentSiteAccess) {
             // create a site ini instance using $useLocalOverrides
             if ($siteIni === null) {
                 $siteIni = eZSiteAccess::getIni($this->currentSiteAccess, 'site.ini');
             }
             // load settings file with $useLocalOverrides = true
             $iniFile = new eZINI($ini, 'settings', null, false, true, false, false, false);
             $iniFile->setOverrideDirs($siteIni->overrideDirs(false));
             $iniFile->load();
         } else {
             $iniFile = new eZINI($ini);
         }
         $iniFiles[$ini] = $iniFile->groups();
         unset($iniFiles[$key]);
     }
     return $iniFiles;
 }
開發者ID:gggeek,項目名稱:ggsysinfo,代碼行數:37,代碼來源:ezinireport.php

示例2: getIni

    /**
     * Loads ini environment for a specific siteaccess
     *
     * eg: $ini = eZSiteAccess::getIni( 'eng', 'site.ini' );
     *
     * @since 4.4
     * @param string $siteAccess
     * @param string $settingFile
     * @return eZINI
     */
    static function getIni( $siteAccess, $settingFile = 'site.ini' )
    {
        // return global if siteaccess is same as requested or false
        if ( isset( $GLOBALS['eZCurrentAccess']['name'] )
          && $GLOBALS['eZCurrentAccess']['name'] === $siteAccess )
        {
            return eZINI::instance( $settingFile );
        }
        else if ( !$siteAccess )
        {
            return eZINI::instance( $settingFile );
        }

        // create a site ini instance using $useLocalOverrides = true
        $siteIni = new eZINI( 'site.ini', 'settings', null, null, true );

        // create a dummy access definition (not used as long as $siteIni is sent to self::load() )
        $access = array( 'name' => $siteAccess,
                         'type' => eZSiteAccess::TYPE_STATIC,
                         'uri_part' => array() );

        // Load siteaccess but on our locale instance of site.ini only
        $access = self::load( $access, $siteIni );

        // if site.ini, return with no further work needed
        if ( $settingFile === 'site.ini' )
        {
            return $siteIni;
        }

        // load settings file with $useLocalOverrides = true
        $ini = new eZINI( $settingFile,'settings', null, null, true );
        $ini->setOverrideDirs( $siteIni->overrideDirs( false ) );
        $ini->load();

        return $ini;
    }
開發者ID:robinmuilwijk,項目名稱:ezpublish,代碼行數:47,代碼來源:ezsiteaccess.php

示例3: eZINI

{
    if ( $GLOBALS['eZCurrentAccess']['name'] !== $currentSiteAccess )
    {
        // create a site ini instance using $useLocalOverrides
        $siteIni = eZSiteAccess::getIni( $currentSiteAccess, 'site.ini' );

        // load settings file with $useLocalOverrides = true & $addArrayDefinition = true
        $ini = new eZINI( /*$fileName =*/ $settingFile,
                          /*$rootDir =*/ 'settings',
                          /*$useTextCodec =*/ null,
                          /*$useCache =*/ false,
                          /*$useLocalOverrides =*/ true,
                          /*$directAccess =*/ false,
                          /*$addArrayDefinition =*/ true,
                          /*$load =*/ false );
        $ini->setOverrideDirs( $siteIni->overrideDirs( false ) );
        $ini->load();
    }
    else
    {
        // load settings file more or less normally but with $addArrayDefinition = true
        $ini = new eZINI( $settingFile,'settings', null, false, null, false, true );
    }

    $blocks = $ini->groups();
    $placements = $ini->groupPlacements();
    $settings = array();
    $blockCount = 0;
    $totalSettingCount = 0;

    foreach( $blocks as $block=>$key )
開發者ID:robinmuilwijk,項目名稱:ezpublish,代碼行數:31,代碼來源:view.php


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