继承codeigniter php中的代码

时间:2015-04-22 20:37:49

标签: php codeigniter

我试图继承另一个文件/类中的常量var。但是我尝试了几乎所有的东西而且由于某种原因我无法做到这一点,有人能告诉我什么是错的或只是在我的代码中发生了吗?

这是我的主要课程,我称之为BasePage。

            class BasePage extends CI_Controller {

                const $TITLE = "My Own DB";

            }

这是另一个类/文件,它通过将常量var TITLE赋予数组来尝试继承到其他类。

            <?php
            defined('BASEPATH') OR exit('No direct script access allowed');

            require 'BasePage.php';

            class Home extends BasePage {

                public function index()
                {
                    $data = array('title' => $TITLE);

                    $this->load->helper('url');
                    $this->load->view('page_login', $data);
                }
            }

1 个答案:

答案 0 :(得分:0)

常量不应该在开头有$。

并且您不会像$TITLETITLE那样访问它,而是使用self::TITLE。在这种情况下,使用parent::TITLE是最正确的,因为它属于父类。

这应该有效:

        class BasePage extends CI_Controller {

            const TITLE = "My Own DB";

        }
        <?php
        defined('BASEPATH') OR exit('No direct script access allowed');

        require 'BasePage.php';

        class Home extends BasePage {

            public function index()
            {
                $data = array('title' => parent::TITLE);

                $this->load->helper('url');
                $this->load->view('page_login', $data);
            }
        }