- 3
- 0
- 约2.86万字
- 约 29页
- 2017-04-04 发布于江苏
- 举报
CodeIgniter Rapid PHP Application Development中文翻译前3章
第一章 对 CodeIgniter 的介绍
大多数PHPer都想写出运行状态良好的应用程序,而且希望尽可能做得简单且不费事。这篇文章是有关 CodeIgniter 的(以下简称 CI),CI 是一个达成以上目标的框架。
如果你只是要达成一个最终的结果,而把中间所有的编码细节和复杂统统丢给一个框架,CI 是你最好的朋友。
CI 有很多优点:免费,轻量级,容易安装,它能使你的编程生涯变得很轻松。 这一章我们会告诉你:
CI 能为你做什么?
什么是“框架”?CI 为什么能被称为框架?
“开源”商业模式。
CI 的某些不足(是的,它并不完美)。
1.1 CodeIgniter 能为你做什么?
如果你已经是一位 PHPer,开发过 PHP 应用,CodeIgniter 将会帮助你做得更好,更容易达成目标。CI 会减少你的代码量。你的脚本可读性也会更好,更容易升级。它会使你的网站结构更紧凑,代码更强健,如果没有很好地研究 CI 的源代码,你可能还无法察觉到它的强健。
对大多数兄弟来讲,你可能已经花了不少时间,系统地学习了 PHP、HTML 和 CSS,当然还有 MySQL 什么的,不过如果使用 CI,你只需要一些基本的 LAMP(WAMP)知识,你没有必要先成为一个专家才能使用 CI。你完全可以先借助于 CI 或别的什么框架软件,成为一个有生产力的 PHP 程序员,拿着高薪然后优雅地进一步学习 PHP 的中高级知识,直至成为一位真正的 PHP 骨灰级的人物。
下述情形,你最好不要使用CI:
你没有一点PHP和HTML的基本知识。
你想用最少的代码,快速简便的写一个基本的内容管理系统(CMS)(可以看看Expression Engine)。
你想写一个只有几个标准特性的简单的网站。
1.1.1 节省时间
CI 学习周期短,见效快。让我们试着评估一下相关的要素:
CI 如何减少代码量?
你真的可以减少很多工作量:敲击键盘的次数减少了,代码错误减少了,你只需要很少的时间调试代码。代码量减少还意味着你只需要较少的空间来存放应用程序。
举两个例子(稍后它们会被进一步分析,因此不用担心如何了解它们的工作原理!)
想象你正在写一个 MySQL 数据库查询。可能的代码如下:
复制代码到剪贴板
PHP 代码
$connection = mysql_connect(localhost,fred,12345);
mysql_select_db(websites, $connection);
$result = mysql_query (SELECT * FROM sites, $connection);
while ($row = mysql_fetch_array($result, MYSQL_NUM))
{
foreach ($row as $attribute)
print {$attribute[1]} ;
}
现在看看 CI 如何处理同一个问题:
复制代码到剪贴板
PHP 代码
$this-load-database(websites);
$query = $this-db-get(sites);
foreach ($query-result() as $row)
{
print $row-url;
}
第二个例子,现在让我们想象你正在用 HTML 写一个数据输入窗口,你想要一个下拉输入框。下拉框中有三个选项。代码如下:
HTML 代码
select name=type
option value=1/option
option value=2/option
option value=3 selected/option
/select
CI 的写法和前例一样,因为它把相关内容放入一个数组,更容易由 PHP 进行处理:
PHP 代码
$urlarray = array(
1 = ,
2 = ,
3 = ,
);
$variable .= form_dropdown(url, $urlarray, 3);
在 HTML 中,你需要输入 154 个字符;在 CI 中,只需要 128 个字符。
1.1.2 使你的网站更健壮
你不需要写很多代码,是因为 CI 提供了许多标准的功能,这些经过仔细推敲的框架内的代码,对安全性和输入进行了有效的校验和考虑。初学者往往没有足够的能力全面兼顾功能和安全。(这也是中高级程序员与新手之间能力差异的一个方面)
确保你的链接自动更新
设想你正在编写一个菜单页面,有许多超链接可重定向到其他页面。他们全部以传统的 HTML 格式编写:
HTML 代码
您可能关注的文档
- Analysis Active Clamp Forward Converter.ppt
- Anna and the King.pptx
- Article635061493561486197.doc
- Article635574295001919322.doc
- ArctiChill Presentation 20101.pptx
- ASIC_Design_Flow.ppt
- AVID简易使用说明.doc
- B3M6U1 Can you run fast?-孙丽华 潍坊高密姜庄小学.ppt
- B2 module 1 our body and healthy habits.ppt
- Battle of Red Cliffs.pptx
最近下载
- 2026年春季教科版三年级科学下册教学计划及进度表(新版本).docx VIP
- 14.赵海林-北斗云高精度打桩导航定位的副本-20201012-2[1].pptx VIP
- (2026 春新版)二年级科学下册教学计划及进度表.docx VIP
- 重症患者的早期康复课件.pptx VIP
- 2022年新高考全国Ⅱ卷英语真题(原卷版).pdf VIP
- 2026春新版大象版科学三年级下册教学计划.pdf VIP
- 2024年江苏省中考地理试题卷(含答案解析).docx
- 小学数学六年级上册思维拓展精选练习题.docx VIP
- 北斗云 DZ502 打桩放线导航仪 快速操作安装手册说明书.pdf VIP
- 美国机械学会标准ASME B16.51-2013 Copper and Copper Alloy Press-Connect Pressure Fittings.pdf VIP
原创力文档

文档评论(0)