最近想着有必要系统的学习一下PHP,以备不时只需。
因为php有点儿火,需要了解下优缺点,以分析实际应用。
下面的分析均属于网络搜集,或许稍加自己的分析,旨在为那些有同样需求的同学提供方便,免去搜集之苦。
为什么很多博客系统均用php开发
一:php有一系列很简单高效的原生模板支持函数.博客系统一般情况下都需要用到模板.而php的模板支持能力,可以有效降低网站模板的开发.
二:同时php的这一些列支持函数都是原生支持,并非外挂支持,更不需要模板开发人员专门开发一套脚本级的处理方法.php的这些支持都是c语言级
的支持.运行速度非常高.而Java以及C#在模板开发方面,还没有足够的原生支持.都需要网站开发者自行开发一套模板支持函数.而这些函数的运行速度自
然也只能是Java或者C#级的运行速度.根本无法与php的c语言级的运行速度相比.
开发容易,自然可以节约人力成本.运行效率高,那么在相同的访问量的情况下,对计算机性能的需求也会更低,同样也节约了服务器硬件成本.
有了这两方面的优势,微博客系统自然也就更加倾向于使用php了.
Php和Asp哪个更快更好
参考博文:Fantaxy025025
结论:php更快更好更有前途
浅谈php的优缺点
php语法快速上手,平时参照函数手册,外加MVC或其他快速框架约束,或者干脆不用框架就自己按自己的意愿来也可以。php如此灵活多变的优点注
定了它最要命的缺点,就是很多人phper写出了大量难于维护和扩展的代码
,当然这也促使着php自身不断完善,以阻止这些垃圾代码的出现。
简言之就是,c、c++很难,仅仅学习和使用c在linux下的第三方库或者c++的所有特性就够一般人折腾一阵子了,花费周期长,在这段时间里会
接触到如何书写和设计流程的问题,或者说c/c++的流程很多经典模式已经功成名就,所以但一旦掌握c/c++了就会如履平地
。
php简单易学易用,几乎不花什么心思学习语法,语法太简单了没啥学头,然而极易滥用。很多人在三天以内就可以轻松写几行php代码,函数想不起来
怎么用,参数位置什么的,简单一查手册搞定。实际上到了php这里,难住我们已经不是语言本身了,而是我们自己如何编程设计的问题,php不像c语言,有
着几十年的开发,几代程序员的累积,我们的大学算法课程几乎都采用c或者c++,而不是php、javascript或者其他脚本语言。到了php这里我
们面对不再是解决某个算法问题,而是直接面向终端产品
,我们的成果最后会在客户的网页浏览器里一目了然。所以学习php更注重编程思路,各个模块之间调用
流程的东西,而不是模块里的某个过滤字符串函数如何实现效率更高的问题
。
当我们演习一些流行的php框架,或者在某些框架之上的作品时,需要学习也是php编程设计的流程
,而不是某个邮件函数时如何发邮件的,发丢了怎么
办。所以说php确实很NB,淘宝,yahoo,163也用php,但是人家用的语言版本跟你一样,人家的代码缩进语法跟你一样,不好意思,你还是无法自
己写出淘宝,yahoo,163来。我们需要学的就是这个。
再谈php的优缺点
来自:Fantaxy025025
原来从根本上说PHP和Python/Ruby的运行机制有一个本质区别
:PHP是每次HTTP请求过来以后,初始化全部资源(例如创建数据库链
接、加载系统类库,创建缓存等等),处理完毕,释放全部资源,这不像Python/Ruby之类带有GC的脚本语言,Python/Ruby是初次启动的
时候初始化资源,随后的请求就不必再次初始化资源了。
这种机制的差异带来的区别就是
:
1、PHP极难出现严重的内存泄露问题,随便你代码写的多烂,反正每个请求一执行完毕,所有资源统统释放光。而Python/Ruby则需要依赖GC来回收内存,因此稍有不慎,还是会出现GC无法释放的内存泄露问题。
2、PHP每次请求都要初始化资源,这个开销非常大。所以尽管PHP解析器本身的运行速度是极快的,但是一旦使用复杂的PHP框架,那么由于需要每
次请求的时候初始化整个框架,性能的下降非常厉害,你用一个很复杂的PHP框架的结果就是整体性能被Ruby远远甩开。这也是为什么PHP社区这么多年
来,并不怎么倾向于使用框架的原因之一。
3、由于PHP这种每请求初始化资源的机制,也造成了PHP添加跨请求的高级特性相当困难,这是PHP本身一个很大的限制,但是反过来说,正是这种
限制使得PHP始终保持在一个比较简单的web语言上面,而正是这一点才是PHP得以成为互联网第一Web编程语言的原因,因此也未必就不好。
这样就从运行机制上说明了php在性能方面的优点和缺点~~~
当然,php的最大的优点当然还是他的“简单”,一个有点编程背景的普通人,只需要学习PHP半天时间,就可以上手开始开发web应用了,这就是PHP最大的优势。
koalant同学的概括非常有意思,我觉得也挺有道理的:
PHP 就是: Quick and Dirty
Java 就是: Beauty and Slowly
Ruby 就是: Quick and Beauty
python 就是: Quick and Simple
++推荐-->>老左的博文系列之php沉思录
:
《PHP沉思录之六:Drupal的性能问题》
提到的观点也不能忽略:
但是,当用户并不是仅仅进行浏览,而是需要频繁地和网站进行互动时,PHP的性能不但无法比拟C和Java,甚至无法与同为脚本语言的Python和Ruby相比。也就是说,PHP更适合于新闻门户这样的内容发布站点,而不是web 2.0应用的首选。
另外一个php优缺点的分析
出处:fantaxy025025
php框架该不该发展和使用的讨论
参考博文的讨论,很不错:http://www.iteye.com/topic/319039
。
结论:
没有结论,因为php还在发展中;
结论就在上面,知者自知;
分享到:
相关推荐
以下是几种常见数据库的优缺点分析: 1. **SQL Server** - **优点:** 操作界面直观,适合Windows环境,易于使用。对于中小型企业,SQL Server提供了良好的性价比。 - **缺点:** 开放性不足,只能在Windows上...
PHP(Hypertext Preprocessor,超文本预处理器...然而,如同任何技术一样,PHP也存在一些不足,如代码组织可能不够严谨,某些功能可能不如其他语言先进,但这些缺点通常可以通过良好的编程实践和持续的版本更新来克服。
本文将讨论PHP常用的七大框架,它们分别是ThinkPHP、Yii2、Laravel、CodeIgniter、Zend Framework、Yaf和Symfony(尽管Symfony未在提供的内容中被提及,但作为较为流行的框架,也包含在讨论范围内),并分析它们各自...
【IIS与Apache优缺点详解】 IIS(Internet Information Services)和Apache都是广泛使用的Web服务器,它们各有特色,适用于不同的应用场景。了解它们的优缺点有助于我们更好地选择适合自己的Web服务解决方案。 **...
【标题】:深入探讨ASP、PHP、JSP的优缺点 【描述】:本文将对ASP、PHP和JSP这三种主流的Web开发语言进行详细分析,探讨它们各自的特点、优势、不足以及适用场景,帮助开发者更好地理解这些技术并选择合适的开发...
标题和描述中提到的核心知识点是,优秀的PHP程序员需要理解PHP代码的优缺点,这涉及到代码的结构化、规范化、自适应性和安全性。以下是对这些方面更详细的解释: 1. 结构化代码:良好的PHP代码应该遵循模块化和分层...
ASP、JSP与PHP的比较 一、概述 ASP、JSP和PHP是当前最常用的三种动态网页语言,均提供了在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。它们都可以在服务器端执行,生成动态网页内容,并且不...
【标题】:深入探讨ASP、PHP和JSP的优缺点 【描述】:本文将对ASP、PHP和JSP这三种流行的网站开发语言进行详细分析,揭示它们各自的优点、缺点及适用场景,帮助开发者了解不同语言的特点。 【部分内容】: **ASP ...
Java、C#、PHP是三种广泛使用的编程语言,它们各自有着独特的优缺点,适用于不同的应用场景。下面将分别探讨这些语言的特性和优缺点。 Java: 1. 面向对象:Java是一种完全面向对象的编程语言,允许开发者创建类和...
### 从PHP视角探讨面向对象与面向过程编程的优缺点 #### 一、引言 在软件开发领域,编程范式的选择对项目的成功至关重要。PHP作为一种广泛应用的脚本语言,在Web开发领域尤其受到青睐。本文将从PHP的角度出发,...
b) http+nginx+php:通过PHP处理文件上传和加密,能在线访问,但不兼容旧图片,且可能需要业务层额外处理。 c) WebDAV+node.js:使用HTTP协议,文件名通过提取码管理,兼容旧图片,但并发性未知。 3. 分布式文件...
然而,PHP也存在一些缺点: 1. **多线程支持不足**:PHP并不擅长处理多线程应用,通常需要通过其他方式模拟实现。 2. **语法不严谨**:PHP的变量无需预定义即可使用,这在某些情况下可能导致错误或难以追踪的问题...
本文将对几款当前流行的PHP框架进行优缺点对比分析,帮助开发者选择更适合自己的开发工具。 【CodeIgniter】 CodeIgniter以其轻量级、简洁易用的特点著称。其优点在于: 1. 配置简单,使用PHP脚本配置,提高了...
【标题】:主流的网站开发语言优缺点-ASP、JSP、PHP 三种技术比较 【主要内容】: 网站开发语言的选择对于构建高效、安全且可扩展的web应用程序至关重要。本文将对比分析三种主流的Web开发语言:ASP、JSP和PHP。 ...
主流动态网页技术优缺点的比较 动态网页技术是指通过服务器端脚本语言生成网页内容的技术,目前市场上有多种动态网页技术,例如ASP、PHP、JSP、ASP.NET等。下面我们将对这些技术的优缺点进行比较。 ASP技术 ASP...
在IT行业中,编程语言的选择是至关重要的,不同的编程语言有着各自独特的优缺点,适用于不同的应用场景。这份名为"编程语言的优缺点共4页.pdf.zip"的压缩文件,很可能包含了对几种常见编程语言的全面分析,从性能、...