我有一个PHP网络项目,我的大学课程将在几天内完成。我的最终成绩值 <75%。老师给我们留下的方式如下:
到了截止日期,我们会在预定的时间与他会面并向他展示我们所学到的知识。或多或少地讨论我们的成绩应该是什么。这让我来到这里,因为他说我们用花哨的codeigniter方式做的事情越多,我们得到的分数就越多。
这是我的问题:
“你对codeigniter有什么提示和技巧吗?你有什么想法,你希望从一开始就知道吗?”代码片段,在线某处的指南等等。
我的偏好是那些在学习时间上具有很高的令人印象深刻的比例。
答案 0 :(得分:7)
可能有用〜
Extending base controllers创建一种易于使用,可扩展的方式来限制对您网站的访问
<强> admin_controller.php 强>
class Admin_Controller extends MY_Controller {
function __construct()
{
if(!$this->auth->is_Admin()) /* imaginary auth library */
{
redirect('login/error');
}
}
// bla bla
}
模板库
使用一个好的模板库可能是天赐之物 - 谷歌,有很多。不适用于每个项目,但可以减少大量不必要的$this->load->view('foo);
,使您的应用更容易维护。
答案 1 :(得分:5)
我现在做的主要事情,我希望我从一开始就做了什么?
Base Controllers
Template library
Migrations for your DB changes
最后,虽然我以前常常反对ORM,但有一些非常轻量级的。使用非常基本的 ORM(不是像Doctrine这样疯狂的重量级混蛋)可以节省你写很多代码。
要尝试的是Yorick Peterse的AwesomeRecord,或WanWizard的DataMapper。
此外,现在使用CI 2.0。不要打扰1.7.x,否则你将在几周内重新编写代码。
答案 2 :(得分:2)
$this->db->insert_id();
将返回最后一个数据库条目的id ...它可能非常有用,我一直都在使用它......
答案 3 :(得分:2)
答案 4 :(得分:1)
它与代码本身没有直接关系,但是CodeIgniter's User Guide确实帮助我理解了MVC模式的全部内容,并提供了有用的注释和示例,例如:
模型是PHP类 旨在处理信息 你的数据库。例如,让我们说 您使用CodeIgniter来管理博客。 你可能有一个模型类 包含插入,更新, 并检索您的博客数据。
根据CI的例子,我的代码80%更清洁,让模特只做他们想要的工作。我也将这种方法引入了其他框架/语言。
答案 5 :(得分:1)
一些建议: