Php 复制代码点火器加载功能

Php 复制代码点火器加载功能,php,class,codeigniter,instance-variables,Php,Class,Codeigniter,Instance Variables,我最近一直在玩Codeigniter,看看我能从中学到什么。我遇到了加载函数,想知道是否有人知道它是如何实现的。基本上,它看起来像: $this->load->model('Model_name'); $this->Model_name->some_function(); 现在load显然是一个类,创建了一个实例并称为load。load包含类“Model_name”并创建其实例。但我不能解决的部分是,load类如何创建一个名为“Model_name”的“class变量”

我最近一直在玩Codeigniter,看看我能从中学到什么。我遇到了加载函数,想知道是否有人知道它是如何实现的。基本上,它看起来像:

$this->load->model('Model_name');
$this->Model_name->some_function();
现在load显然是一个类,创建了一个实例并称为load。load包含类“Model_name”并创建其实例。但我不能解决的部分是,load类如何创建一个名为“Model_name”的“class变量”,以便在代码的第二行中使用?我将如何在php中实现这一点呢


谢谢。

这类功能适用于PHP等解释语言。虽然这是非常混乱的图片,特别是如果你有经验,用严格的语言,如C++,C等。
其思想是,有一些PHP函数可以执行PHP代码,结果将在脚本的其他地方可见

这类功能可以与解释语言(如PHP)一起使用。虽然这是非常混乱的图片,特别是如果你有经验,用严格的语言,如C++,C等。
其思想是,有一些PHP函数可以执行PHP代码,结果将在脚本的其他地方可见

该类的基本功能是记住所有创建的对象(例如,这个对象),然后通过引用将新创建的类指定为这些类中的变量

function Load($className)
{
  $newClass = new $className();
  foreach($this->objects as &$object) //objects is array with created objects
    $object->$className = $newClass;
}

然而,它在后台做的事情要比这多得多。你知道你可以打开“loader.php”,然后阅读它的功能,对吗?

类的基本功能是记住所有创建的对象(例如这个),然后通过引用将新创建的类作为变量分配给这些类

function Load($className)
{
  $newClass = new $className();
  foreach($this->objects as &$object) //objects is array with created objects
    $object->$className = $newClass;
}
然而,它在后台做的事情要比这多得多。你知道你可以打开“loader.php”,然后阅读它的功能,对吗