这个Codeigniter代码是否正确?

She*_*don 0 php codeigniter

我花了大量时间浪费时间从头开始做所有事情,我刚开始看PHP框架.一位朋友推荐给我后,我想我会给Codeigniter一个.

我完成了第一个教程并且没有任何问题,但我遇到了第二个问题.

起初我的代码与教程相同:

<?php


class Blog extends CI_Controller{


    function Blog()
    {

        parent::CI_Controller();

        $this->load->scaffolding('entries');
    }


    public function index(){

        $data['title'] = "My Blog Title";
        $data['heading'] = "An intresting title";


        $data['todo'] = array('create media player','design site','finish project');

        $this->load->view('blog_view',$data);
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

但是我收到了内部服务器错误.查看用户指南后,它显示了使用构造函数的不同方法.

我将代码更改为文档规范.

<?php


class Blog extends CI_Controller{


    public function __construct() {

        parent::__construct();

        $this->load->scaffolding('entries');
    }




    public function index(){

        $data['title'] = "My Blog Title";
        $data['heading'] = "An intresting title";


        $data['todo'] = array('create media player','design site','finish project');

        $this->load->view('blog_view',$data);
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

但我仍然得到一个内部错误.我不知道我的代码是错误还是我错误配置了其他内容.一些建议会很好,谢谢.

编辑:澄清 - 当我将构造函数添加到类时,我只收到内部错误.

Mat*_*att 5

这很可能是因为您尝试加载scaffolding最新版本的CodeIgniter.

自1.6版以来,脚手架已经折旧.它在2.0中被删除,最新版本现在是2.0.2

就您提供的片段而言,后一种声明构造函数(__construct)的形式优于使用类名(Blog).此方法也与2.0之后的CodeIgniter核心类一致.

顺便说一句,我不知道为什么CodeIgniter会在他们的教程中包含这些过时的样本.EllisLab似乎最近对CI项目失去了兴趣,这是一种耻辱:(