本文整理汇总了PHP中Autoloader::classes方法的典型用法代码示例。如果您正苦于以下问题:PHP Autoloader::classes方法的具体用法?PHP Autoloader::classes怎么用?PHP Autoloader::classes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Autoloader
的用法示例。
在下文中一共展示了Autoloader::classes方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: classArray
protected static function classArray()
{
if (is_null(self::$classes) || !is_array(self::$classes)) {
self::$classes = (require COMMON_PATH . '/autoload.conf.php');
$appClassList = appConfig::getAutoloadClass();
if (!empty($appClassList)) {
self::$classes = array_merge(self::$classes, $appClassList);
}
}
}
示例2: createClassMap
public static function createClassMap()
{
$configAutoloader = Config::get('Autoloader');
$configClassMap = Config::get('ClassMap');
// Config/Autoloader.php dosyasından tarama
// ayaraı kapalı ise tarama yapmaz.
if ($configAutoloader['directoryScanning'] === false) {
return false;
}
// ClassMap'in oluşturulması için hangi dizinlerin
// taranması gerektiği Config/Autoloader.php dosyasında
// yer alır. Bu dizinlerin bilgisi alınıyor.
$classMap = $configAutoloader['classMap'];
// Belirtilen dizinler ve alt dizinler taranıyor
// ve sınıf haritaları oluşturuluyor...
if (!empty($classMap)) {
foreach ($classMap as $directory) {
$classMaps = self::searchClassMap($directory, $directory);
}
}
$classArray = array_diff_key(isset($classMaps['classes']) ? $classMaps['classes'] : array(), isset($configClassMap['classes']) ? $configClassMap['classes'] : array());
$eol = eol();
// Config/ClassMap.php
$path = CONFIG_DIR . 'ClassMap.php';
// ----------------------------------------------------------------------------------------
// ClassMap dosyasının sınıflar bölümü oluşturuluyor.
// ----------------------------------------------------------------------------------------
if (!is_file($path)) {
$classMapPage = '<?php' . $eol;
} else {
$classMapPage = '';
}
if (!empty($classArray)) {
self::$classes = $classMaps['classes'];
foreach ($classArray as $k => $v) {
$classMapPage .= '$config[\'ClassMap\'][\'classes\'][\'' . $k . '\'] = \'' . $v . '\';' . $eol;
}
}
$namespaceArray = array_diff_key(isset($classMaps['namespaces']) ? $classMaps['namespaces'] : array(), isset($configClassMap['namespaces']) ? $configClassMap['namespaces'] : array());
// ----------------------------------------------------------------------------------------
// ClassMap dosyasının isim alanları bölümü oluşturuluyor.
// ----------------------------------------------------------------------------------------
if (!empty($namespaceArray)) {
self::$namespaces = $classMaps['namespaces'];
foreach ($namespaceArray as $k => $v) {
$classMapPage .= '$config[\'ClassMap\'][\'namespaces\'][\'' . $k . '\'] = \'' . $v . '\';' . $eol;
}
}
// ----------------------------------------------------------------------------------------
// ClassMap verisi yine aynı isimde bir dosya olarak oluşturuluyor.
// ----------------------------------------------------------------------------------------
if (!file_put_contents($path, $classMapPage, FILE_APPEND)) {
die(getErrorMessage('Error', 'fileNotWrite', $path));
}
}
示例3: createClassMap
public static function createClassMap()
{
$configAutoloader = Config::get('Autoloader');
// Config/Autoloader.php dosyasından tarama
// ayaraı kapalı ise tarama yapmaz.
if ($configAutoloader['directoryScanning'] === false) {
return false;
}
// ClassMap'in oluşturulması için hangi dizinlerin
// taranması gerektiği Config/Autoloader.php dosyasında
// yer alır. Bu dizinlerin bilgisi alınıyor.
$classMap = $configAutoloader['classMap'];
// Belirtilen dizinler ve alt dizinler taranıyor
// ve sınıf haritaları oluşturuluyor...
if (!empty($classMap)) {
foreach ($classMap as $directory) {
$classMaps = self::searchClassMap($directory, $directory);
}
}
// Config/ClassMap.php
$path = CONFIG_DIR . 'ClassMap.php';
// ----------------------------------------------------------------------------------------
// ClassMap dosyasının sınıflar bölümü oluşturuluyor.
// ----------------------------------------------------------------------------------------
$classMapPage = '<?php' . eol();
$classMapPage .= '$config[\'ClassMap\'][\'classes\'] = array' . eol() . '(' . eol();
if (!empty($classMaps['classes'])) {
self::$classes = $classMaps['classes'];
foreach ($classMaps['classes'] as $k => $v) {
$classMapPage .= "\t" . '\'' . $k . '\' => \'' . $v . '\',' . eol();
}
}
$classMapPage = rtrim($classMapPage, ',' . eol());
$classMapPage .= eol() . ');' . eol(2);
// ----------------------------------------------------------------------------------------
// ClassMap dosyasının isim alanları bölümü oluşturuluyor.
// ----------------------------------------------------------------------------------------
$classMapPage .= '$config[\'ClassMap\'][\'namespaces\'] = array' . eol() . '(' . eol();
if (!empty($classMaps['namespaces'])) {
self::$namespaces = $classMaps['namespaces'];
foreach ($classMaps['namespaces'] as $k => $v) {
$classMapPage .= "\t" . '\'' . $k . '\' => \'' . $v . '\',' . eol();
}
}
$classMapPage = rtrim($classMapPage, ',' . eol());
$classMapPage .= eol() . ');';
// ----------------------------------------------------------------------------------------
// ClassMap verisi yine aynı isimde bir dosya olarak oluşturuluyor.
// ----------------------------------------------------------------------------------------
$fileOpen = fopen($path, 'w');
$fileWrite = fwrite($fileOpen, $classMapPage);
if (empty($fileWrite)) {
die(getErrorMessage('Error', 'fileNotWrite', $path));
}
fclose($fileOpen);
}