php的优缺点

1. 跨平台,性能优越,跟Linux/Unix结合别跟Windows结合性能强45%,并且和很多免费的平台结合非常省钱,比如LAMP(Linux /Apache/Mysql/PHP)或者FAMP(FreeBSD/Apache/Mysql/PHP)结合,或者数据应用够大可以考虑换 PostgreSQL或者Oracle,支持N种数据库。(N >= 10) 2. 语法简单,如果有学习C和Perl的很容易上手,并且跟ASP有部分类似。有成熟的开发工具,比如NuPHPed,或者Zend Studio等等,再Linux平台下可以使用Eclipse等等。 3. 目前主流技术都支持,比如WebService、Ajax、XML等等,足够应用。 4. 有比较完整的支持,比如使用ADODB或者PEAR::DB做数据库抽象层,用Smarty或者smart template做模板层,如果是PHP 5.1的话,还能够使用PDO(PHP Data Object)来访问数据库。 5. 有很多成熟的框架,比如支持MVC的框架:phpMVC,支持类似ASP.net的事件驱动的框架:Prado,支持类似Ruby On Rails的快速开发的框架:Cake等等,足够满足你的应用需求。 6. PHP 5已经有成熟的面向对象体系,能够适应基本的面向对象要求。适合开发大型项目。 7. 有成熟的社区来支持PHP的开发。

8. 目前已经很多大型应用都是使用PHP,比如淘宝网、Yahoo、163、Sina等等大型门户,很多选用PHP来作为他们的开发语言,所以大型门户都能够选用它,我想足够能够你的使用了。

9. 有很多开源的框架或开源的系统可以使用,比如比较知名的开源框架有Zend Framework、CakePHP、CodeIgniter、symfony等,开源论坛有Discuz!、Phpwind等,开源博客 WordPress,开源网店系统如Ecshop、ShopEx等,开源的SNS系统如UCHome、ThinkSNS等。

10.使用成本低 (linux apache mysql php内核)

缺点

1.对多线程支持不太好,大多数时候我们只能简单的模拟去实现的。

2.语法不太严谨,比如变量不需要定义就可以使用,在c,java,c++中变量是必须先定义以后才可以使用的。

3.PHP的解释运行机制。这种运行机制使得每个PHP页面被解释执行后,所有的相关资源都会被回收。也就是说,PHP在语言级别上没有办法让某个 对象常驻内存。在PHP中,所有的变量都是页面级的,无论是全局变量,还是类的静态成员,都会在页面执行完毕后被清空。以JSP为例,在JSP 中,Java Bean的scope有四种有效值:Page、Application、Session、Request,分别对应页面、程序、会话、请求四种生存期。但 在PHP中,只有Page一种生存期。

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2015-07-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

Python神技能 | 使用爬虫获取汽车之家全车型数据

最近想在工作相关的项目上做技术改进,需要全而准的车型数据,寻寻觅觅而不得,所以就只能自己动手丰衣足食,到网上获(窃)得(取)数据了。 汽车之家是大家公认的数据做...

4339
来自专栏coding

swoole框架-swoft初体验swoft环境搭建体验http服务体验ws服务初体验

没有swoole之前,php一直被"誉“为世界上最好的语言。swoole横空出世后,php就成了宇宙最好的语言了...

711
来自专栏ionic3+

【两天完成简书搬家】——第一天,NodeJS爬取简书数据

分析下简书,还挺好爬取的,写个简单的爬虫还是有挺多开发语言可选择。本来我用C#也写过一个简单的爬虫框架,只是用Mac后.Net的相关代码基本全放在家里的旧电脑里...

683
来自专栏芋道源码1024

Dubbo源码解析 —— Router

前言 估算了一下, dubbo里面涉及的东西还是比较多的.比如谈到框架的时候,设计模式都是一个老生常谈的话题,再比如我们开发中我们不常用的一些概念, spi、...

3716
来自专栏有趣的Python

(旧)3- Flask构建弹幕微电影网站- 课程介绍Flask 构建微电影视频网站

Flask 构建微电影视频网站 已上线演示地址: http://movie.mtianyan.cn 项目源码地址:https://github.com/mti...

3749
来自专栏CSDN技术头条

创建一个分布式网络爬虫的故事

编者按:作者通过创建和扩展自己的分布式爬虫,介绍了一系列工具和架构, 包括分布式体系结构、扩展、爬虫礼仪、安全、调试工具、Python 中的多任务处理等。以下为...

1928
来自专栏西枫里博客

阿里短信通知的接入与实现(二)暨云通信短信平台API接口调用

事情变化太快,上线还不到一个月的注册短信验证功能就遇到了平台搬家的尴尬。阿里云发了一个邮件通知。原淘宝短信和阿里云市场短信将迁移到云通信平台,自2018年1月2...

703
来自专栏ThoughtWorks

被踢出去的用户

在还没有掌握全部证据之前就下结论会犯严重的错误,会使判断带有偏见。——《血字的研究》

582
来自专栏携程技术中心

RN沙龙 | 携程是如何做React Native优化的

赵辛贵,携程无线开发高级技术经理,目前主要负责React Native框架在携程内部的使用推广和性能优化 React Native(下文简称RN)开源已经一年...

4209
来自专栏pangguoming

使用JAVA开发微信公众平台(一)——环境搭建与开发接入

一、 初始微信公众平台 微信公众平台,即我们平时所说的“公众号”,曾用名“官方平台”、“媒体平台”,但最终命名为“公众平台”。从微信的命名我可以发现,公众平台不...

4286

扫描关注云+社区