codeigniter多文件上传
⑴ php是世界上最好的语言
PHP是世界上最好的语言。这是网络上广泛流传的一个梗,并不是说PHP就真的是编程最好的语言,其实每款编程语言都有自身的优势以及所专长的领域,并不能简单地说PHP就是最好的编程语言,这多少有点调侃的成分。
PHP优点
(一)流行,容易上手
PHP是目前最流行的编程语言,这毋庸置疑。它驱动全球超过2亿多个网站,有全球超过81.7%的公共网站在服务器端采用PHP。PHP常用的数据结构都内置了,使用起来方便简单,也一点都不复杂,表达能力相当灵活。
(二)开发职位很多
在服务器端的网站编程中PHP会更容易帮助你找到工作。很多互联网相关企业都在使用PHP开发框架,所以可以说市场对PHP的开发程序员的需求还是比较大的。
(三)仍然在不断发展
PHP在不断兼容着类似closures和命名空间等技术,同时兼顾性能和当下流行的框架。版本是7之后,一直在提供更高性能的应用。
(四)可植入性强
PHP 语言在补丁漏洞升级过程中,核心部分植入简单易行,且速度快。
(五)拓展性强
PHP 语言在数据库应用过程中,可以从数据库调取各类数据,执行效率高。
PHP缺点
(一)PHP的解释运行机制
在 PHP 中,所有的变量都是页面级的,无论是全局变量, 还是类的静态成员,都会在页面执行完毕后被清空。
(二)设计缺陷,缺少关注PHP被称作是不透明的语言,因为没有堆栈追踪,各种脆弱的输入。没有一个明确的设计哲学。早期的PHP受到Perl的影响,带有out参数的标准库又是有C语言引入,面向对象的部分又是从C++和java学来的。
(三)对递归的不良支持
PHP并不擅长递归。它能容忍的递归函数的数量限制和其他语言比起来明显少。
这句话的产生,虽然带有一定php码农个人感情色彩的偏见,但是未尝没有道理。首先,PHP的使用率远远高于其他语言的使用率,在web开发中占有很大份额。
同时PHP作为一种通用开源语言,因其语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛。具有简单易懂的语法、没有奇怪的黑魔法、既能面向过程,又能面向对象、安装后各种扩展集一身、包括但不限于mysql、json、mbstr等,方便至极。
在这种情况下,PHP就被戏称为“世上最好的语言”,当然它也不负众望,成了大部分IT码农的首选。它的门槛低,使得更多新手小白入门快,能快速了解IT这行,以及自己的工作性质。语法简单,很快融入其中,被成为“弱类型语言”。
现在很多重量级的开源项目都会使用PHP语言,企业开发上也越来越支持使用PHP。它成熟的框架,大大缩短开发周期,在加上成本低,导致了市场需求大。
(1)codeigniter多文件上传扩展阅读
主要参考框架
(一)CodeIgniter的优点
1、配置简单,全部的配置使用 PHP脚本来配置,执行效率高;具有基本的路由功能,能够进行一定程度的路由;具有初步的Layout功能,能够制作一定程度的界面外观;数据库层封装的不错,具有基本的MVC功能。
2、快速简洁,代码不多,执行性能高,PHP框架简单, 容易上手,学习成本低,文档详细;自带了很多简单好用的library,框架适合小型应用。
(二)CodeIgniter 缺点
1、把Model层简单的理解为数据库操作。
2、PHP 框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要。
(三)CakePHP 的优点
1、CakePHP 是最类似于RoR的 PHP 框架,包括设计方式,数据库操作的Active Record方式;设计层面很优雅,没有自带多余的 library,所有的功能都是纯粹的框架,执行效率还不错;数据库层的hasOne,hasMany 功能很强大,对于复杂业务处理比较合适;路由功能,配置功能还不错;自动构建脚手架(scaffold)很强大;适合中型应用;基本实现过了MVC每一层; 具有自动操作命令行脚本功能。
2、文档比较全,在国内推广的比较成功,大部分人都知道CakePHP,学习成本中等。
(四)CakePHP 的缺点
1、CakePHP非常严重的问题是把Model理解为数据库层操作,严重影响了除了数据库之外的操作能力
2、CakePHP的cache功能略显薄弱,配置功能稍嫌弱;CakePHP不适合大型应用,只适合中型应用,小型应用来说略微的学习成本高了点。
参考资料来源:网络-PHP
⑵ 比较常用的几个PHP开发工具
1、浏览器扩展组件工具(Firefox扩展)--
FirePHP FirePHP是一款基于Firebug的扩展,phpLangEditor 一款PHP函数库解释工具。 PHP Lookup :是一个内置的搜索栏,以帮助您快速查找引用的PHP语法。 PHP ManualSearch :一个方便的搜索栏,从您的Web浏览器中搜索官方PHP文档。
2、PHP代码调试工具--
Webgrind Webgrind完美支持PHP 5,安装迅速简便,可以跨越多个平台运行。 Xdebug Xdebug是使用极为广泛的PHP代码调试工具,它提供大量的工具帮助你找出程序中潜在的BUG,并且它得到了很多PHP开发工具的支持,以做为专门的测试工具继承在这些开发工具中,比如PHPEclipse、phpDesigner等。
3、PHP框架支持--
Dwoo :PHP5 的模板引擎。CodeIgniter 用于敏捷软件开发的PHP框架。 YII Framework :一个高性能的基于组件的PHP框架。 NetBeans :强大的PHP扩展框架支持集,拥有完善的GUI界面,独自成为一款强大的PHP开发工具。 Solar symfony :一个开源的PHP Web框架,加速Web应用程序开发的创建与维护。
4、PHP代码测试、优化工具--
PHPUnit :一款基于PHP 5的JUnit组件测试工具。 SimpleTest SimpleTest是一款高度集成的PHP代码测试工具。 Selenium :一款专业全自动WEB站点PHP代码测试工具,比较侧重的UI输入输出数据测试。PHP_CodeSniffer dBug 一款专注于测试类、对象、数组以及XML文件的PHP工具。 PHP Profile Class
5、PHP扩展、工具集、类库支持--
SimplePie 此工具可用于PHP RSS解析。 HTML Purifier :此工具可以用来移除所有恶意代码(XSS),而且还能确保你的页面遵循W3C的标准规范。 TCPDF :一个可以用于快速生成PDF文件的PHP5函数包。 htmlSQL :一组可以使你方便的对HTML和XML内容方便的使用类似SQL语句进行检索的PHP类集。
6、PHP集成开发环境(IDE)、编辑器--
PHPEclipse 一个强大的Eclipse环境下开发PHP的插件,包括的主要功能有:PHP语法分析,调试,代码格式化,大纲视图,代码模板定制等。 PhpED 一套Windows环境下的PHP集成开发环境。phpDesigner 一款轻量级的PHP集成开发工具,代码编辑器功能特别强大,支持在线预览。 ZendStudio 一 款Eclipse下优秀的PHP开发环境,适用于开发包含丰富接口的RIAs应用程序。
7、PHP在线工具及资源--
Minify:该工具使用 PHP5 开发,用于合并压缩js/css 文件的应用程序,合并压缩之后的结果可通过 HTTP gzip/deflate 及一些相关头,优化客户端缓存。 HTTP_StaticMerger:CSS和java script文件自动"合并"。 PHP Object Generator 一款PHP代码生成器,它能够为你的PHP4/PHP5应用程序生成简洁和可测试的面向对象代码。