mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-06 15:02:47 +08:00
改进Loader类的model controller 和 validate方法 支持直接传入类名实例化
This commit is contained in:
@@ -369,12 +369,16 @@ class Loader
|
|||||||
if (isset(self::$instance[$guid])) {
|
if (isset(self::$instance[$guid])) {
|
||||||
return self::$instance[$guid];
|
return self::$instance[$guid];
|
||||||
}
|
}
|
||||||
if (strpos($name, '/')) {
|
if (strpos($name, '\\')) {
|
||||||
list($module, $name) = explode('/', $name, 2);
|
$class = $name;
|
||||||
} else {
|
} else {
|
||||||
$module = Request::instance()->module();
|
if (strpos($name, '/')) {
|
||||||
|
list($module, $name) = explode('/', $name, 2);
|
||||||
|
} else {
|
||||||
|
$module = Request::instance()->module();
|
||||||
|
}
|
||||||
|
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
||||||
}
|
}
|
||||||
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
|
||||||
if (class_exists($class)) {
|
if (class_exists($class)) {
|
||||||
$model = new $class();
|
$model = new $class();
|
||||||
} else {
|
} else {
|
||||||
@@ -400,12 +404,16 @@ class Loader
|
|||||||
*/
|
*/
|
||||||
public static function controller($name, $layer = 'controller', $appendSuffix = false, $empty = '')
|
public static function controller($name, $layer = 'controller', $appendSuffix = false, $empty = '')
|
||||||
{
|
{
|
||||||
if (strpos($name, '/')) {
|
if (strpos($name, '\\')) {
|
||||||
list($module, $name) = explode('/', $name);
|
$class = $name;
|
||||||
} else {
|
} else {
|
||||||
$module = Request::instance()->module();
|
if (strpos($name, '/')) {
|
||||||
|
list($module, $name) = explode('/', $name);
|
||||||
|
} else {
|
||||||
|
$module = Request::instance()->module();
|
||||||
|
}
|
||||||
|
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
||||||
}
|
}
|
||||||
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
|
||||||
if (class_exists($class)) {
|
if (class_exists($class)) {
|
||||||
return App::invokeClass($class);
|
return App::invokeClass($class);
|
||||||
} elseif ($empty && class_exists($emptyClass = self::parseClass($module, $layer, $empty, $appendSuffix))) {
|
} elseif ($empty && class_exists($emptyClass = self::parseClass($module, $layer, $empty, $appendSuffix))) {
|
||||||
@@ -432,12 +440,16 @@ class Loader
|
|||||||
if (isset(self::$instance[$guid])) {
|
if (isset(self::$instance[$guid])) {
|
||||||
return self::$instance[$guid];
|
return self::$instance[$guid];
|
||||||
}
|
}
|
||||||
if (strpos($name, '/')) {
|
if (strpos($name, '\\')) {
|
||||||
list($module, $name) = explode('/', $name);
|
$class = $name;
|
||||||
} else {
|
} else {
|
||||||
$module = Request::instance()->module();
|
if (strpos($name, '/')) {
|
||||||
|
list($module, $name) = explode('/', $name);
|
||||||
|
} else {
|
||||||
|
$module = Request::instance()->module();
|
||||||
|
}
|
||||||
|
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
||||||
}
|
}
|
||||||
$class = self::parseClass($module, $layer, $name, $appendSuffix);
|
|
||||||
if (class_exists($class)) {
|
if (class_exists($class)) {
|
||||||
$validate = new $class;
|
$validate = new $class;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user