Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的对象问题_Php_Model View Controller_Class_Object - Fatal编程技术网

PHP中的对象问题

PHP中的对象问题,php,model-view-controller,class,object,Php,Model View Controller,Class,Object,我对PHP中的对象有问题 我知道\uu construct()不会运行,因为Foo是从控制器扩展而来的,但无论如何,我没有得到任何错误 实例化Foo时,将运行控制器的\uu构造() 例外情况是,如果在Foo中创建\uu构造(),并且忘记调用父项::\uu构造() 我知道\uu construct()不会运行,因为Foo是从控制器扩展而来的,但无论如何,我没有得到任何错误 实例化Foo时,将运行控制器的\uu构造() 例外情况是,如果在Foo中创建\uu构造(),并且忘记调用父项::\uu构

我对PHP中的对象有问题


我知道
\uu construct()
不会运行,因为Foo是从控制器扩展而来的,但无论如何,我没有得到任何错误

实例化
Foo
时,将运行
控制器的
\uu构造()

例外情况是,如果在
Foo
中创建
\uu构造()
,并且忘记调用
父项::\uu构造()

我知道
\uu construct()
不会运行,因为Foo是从控制器扩展而来的,但无论如何,我没有得到任何错误

实例化
Foo
时,将运行
控制器的
\uu构造()

例外情况是,如果在
Foo
中创建
\uu构造()
,并且忘记调用
父项::\uu构造()



将调用父对象的构造函数添加到Foo中::\u construct()


我不明白你的问题。你的代码在这里工作…(旁注)问问你自己,你的控制器是否真的是一个专门的加载器。如果答案是“否”,则控制器不应从加载程序继承。若控制器只是使用一个加载器,那个么你们应该更喜欢组合/聚合而不是继承。我不理解你们的问题。你的代码在这里工作…(旁注)问问你自己,你的控制器是否真的是一个专门的加载器。如果答案是“否”,则控制器不应从加载程序继承。若控制器只使用加载程序,那个么您应该更喜欢组合/聚合而不是继承。
<?php
error_reporting( E_ALL | E_STRICT );
##
class Loader {
    function view() {
        echo 'I did it! )';
    }
}
class Controller {
    public $loader;
    function __construct() {
        $this -> loader = new Loader;
    }
}

##
class Foo extends Controller {
    function index() {
        $this -> loader -> view();
    }
}