IM在表达式引擎中构建我的第一个站点,我想知道如何在EE中使用自定义控制器,就像我在CODEDENITER中使用的,或者EE等效的是什么?

最佳答案

控制器是应用程序的核心,因为它们决定如何处理http请求。
您可能很清楚,CodeIgniter Controller只是一个类文件,可以用URI关联起来命名。

<?php
    class Blog extends CI_Controller {

        public function index() {
            echo 'Hello World!';
        }
    }
?>

expressionengine等效项是template groups and templates,由控制面板的模板管理器管理。
由于EE的模板组和模板可以命名为任何你想要的,URL structure毫不意外地松散地模仿了一个代码点火器应用程序——毕竟,EE是建立在CI上的。
例如,考虑这个uri:example.com/index.php/blog
codeigniter会试图找到一个名为blog.php的控制器并加载它。
expressionengine将尝试查找名为blog的模板组并加载名为index的模板。
继续这个例子,uri的第二个段决定调用控制器中的哪个函数(对于codeigniter)或加载哪个模板(对于expressionengine)。
构建相同的uri:example.com/index.php/blog/entry
codeigniter会试图找到一个名为blog.php的控制器并加载它。
expressionengine将尝试查找名为blog的模板组并加载名为entry的模板。
从第三个和超越url段开始,codeigniter和expressionengine开始采用不同的方法。(对它们之间差异的充分解释超出了本答复的范围)。
尽管codeigniter和expressionengine有许多相似之处,但在非常低的级别上,codeigniter允许您构建web应用程序,而expressionengine允许您构建web站点。

09-07 21:47