是否可以从 stdClass 扩展 CI_Controller / CI_Model
Is it possible to extend CI_Controller / CI_Model from stdClass
我正在使用 stdClass
初始化一个 class,例如:
$Upload = new stdClass;
- 是否可以为此 class 扩展控制器/模型?
- 是否可以为此 class 构建一个结构?
如果可能的话,我想上传一个控制器或模型。
我想要的原因是因为我在我创建的 php
文件中有这个,并且该文件中有函数。并且根据我想为其所需目的创建不同 stdClass
的功能。
stdClass
是内置于 PHP 中的预定义 class
。它本质上是一个空对象。它还用于对对象进行类型转换。所以不,它不能有构造函数。
CodeIgniter 类 CI_Controller
和 CI_Model
已经定义,所以不可以通过扩展 stdClass
创建 'controller' 或 'model' .但也许我误解了你的问题。
您可以在模型或控制器中的任何地方使用 stdClass
并轻松地向其添加属性。
// create an instance of stdClass
$Upload = new stdClass;
// add a "name" property
$Upload->name = "foo";
// add a "title" property
$Upload->title = "Bar";
echo $Upload->name; //outputs foo
通过类型转换数组可能更容易创建以上内容
$upload = (object) ['name'=>'foo', 'title'=>'bar'];
echo $upload->name; //outputs foo
我正在使用 stdClass
初始化一个 class,例如:
$Upload = new stdClass;
- 是否可以为此 class 扩展控制器/模型?
- 是否可以为此 class 构建一个结构?
如果可能的话,我想上传一个控制器或模型。
我想要的原因是因为我在我创建的 php
文件中有这个,并且该文件中有函数。并且根据我想为其所需目的创建不同 stdClass
的功能。
stdClass
是内置于 PHP 中的预定义 class
。它本质上是一个空对象。它还用于对对象进行类型转换。所以不,它不能有构造函数。
CodeIgniter 类 CI_Controller
和 CI_Model
已经定义,所以不可以通过扩展 stdClass
创建 'controller' 或 'model' .但也许我误解了你的问题。
您可以在模型或控制器中的任何地方使用 stdClass
并轻松地向其添加属性。
// create an instance of stdClass
$Upload = new stdClass;
// add a "name" property
$Upload->name = "foo";
// add a "title" property
$Upload->title = "Bar";
echo $Upload->name; //outputs foo
通过类型转换数组可能更容易创建以上内容
$upload = (object) ['name'=>'foo', 'title'=>'bar'];
echo $upload->name; //outputs foo