1.优点:开源 免费性 快捷性 [程序开发快,运行快,技术本身学习快]

插件丰富,网上的解决方案有很多,而且还有庞大的开源社区可以提供帮助。

跨平台性强  效率高   图像处理

面向对象

[在php4,php5 中,面向对象方面都有了很大的改进,php完全可以用来开发大型商业程序。]

PHP 性能很强 . 配合简单、稳定、容易部署,总的来说 php能帮你低成本完成事情

2.缺点,

1)函数命名不规范   驼峰法和下滑线,传参位置不一 你知道的

2)单线程  ; PHP本身,一直以来php就是个单进程的程序;虽然php的pthreads扩展早就有了。但是它不够稳定,运行运行着就会莫名其妙的自己挂掉;php的扩展都是C写的,这也就意味着任何一个扩展出现线程竞争资源控制问题都能让整个挂掉

3)核心异步网络不支持(当然在linux只有同步非阻塞网络模型)。却少了这个使得很难开发一个能够承受大并发的网络应用。传统的网络模型和io都阻塞的。这样基本的编程的做法就是一个进程(或者线程)响应一个用户链接请求。因此无法完成像实时网游那样需要成千上万网络连接的任务。尽管php也有Libevent、eio扩展对此算是某种程度上面的弥补,但是感觉都不是那么完善

4)只支持web开发,不方便做 .exe文件,不方便做桌面应用程序. 不方便做手机程序.

5)不适合做爬虫、自动运行脚本.科学运算项目,这语言基本构架就不适合,虽然有很多方法实现。

6)后期维护困难。后期提速空间局限性较大。

引用鸟哥[Laruence]的话:
说PHP不支持多线程(90% of这些人不知道多线程模型和IO复用模型的不相伯仲), 烂. 说PHP不支持异步(90% of这些人, 根本不知道异步代表什么), 烂. 说PHP是屌丝语言(99% of这些人是想找寻智商优越感), 烂. 每每我看到这种的论调, 我真的很无奈, 因为你根本没办法让一个装傻的人变聪明.

php 的优缺点的更多相关文章

  1. DDD CQRS架构和传统架构的优缺点比较

    明天就是大年三十了,今天在家有空,想集中整理一下CQRS架构的特点以及相比传统架构的优缺点分析.先提前祝大家猴年新春快乐.万事如意.身体健康! 最近几年,在DDD的领域,我们经常会看到CQRS架构的概 ...

  2. [NodeJS] 优缺点及适用场景讨论

    概述: NodeJS宣称其目标是“旨在提供一种简单的构建可伸缩网络程序的方法”,那么它的出现是为了解决什么问题呢,它有什么优缺点以及它适用于什么场景呢? 本文就个人使用经验对这些问题进行探讨. 一. ...

  3. emmet,jade,haml, slim,less,sass,coffeescript等的实战优缺点

    摘要: 文章背景,来自于群内周五晚上的一次头脑风暴式的思维碰撞交流活动. 随着前端技术的蓬勃发展, 各种新技术随着生产力的需要不断的涌入我们的视野, 那今天探讨的话题是这些新时代的前端兵器谱: 一. ...

  4. sql server的优缺点

    sql server的优点众多,让其在数据库领域独占鳌头,成为最受欢迎的数据库系统,其优缺点也自然是喜爱者们所关注的,首先了解一下它的历史: sql server是一个关系型数据库管理系统,最初是由M ...

  5. 单页Web应用优缺点

    一.定义单页 Web 应用 (single-page application 简称为 SPA) 是一种特殊的 Web 应用.它将所有的活动局限于一个Web页面中,仅在该Web页面初始化时加载相应的HT ...

  6. 使用iframe的优缺点,为什么少用iframe以及iframe和frame的区别。

    注:HTML5不再支持使用frame,iframe只有src 属性一.使用iframe的优缺点优点:1.程序调入静态页面比较方便;2.页面和程序分离;缺点:1.iframe有不好之处:样式/脚本需要额 ...

  7. 几款主流PHP框架的优缺点评比

    PHP是一种在国内外都比较流行的开源服务器端脚本开发语言.能够适应大中小型项目的开发需求.我们将在这篇文章中向大家介绍几款主流PHP框架及其相关优缺点评比,作为一个参考分享给朋友们. 主要参考的PHP ...

  8. Mvc与WebForm优缺点及Mvc的使用

    关于Mvc与WebForm的优缺点在网上的评论可谓不胜枚举,但脱离了我们的项目来谈这些意义就不大了.以我们这次改版来看,WebForm的优势有以下几点: 一,可以使用<#include>, ...

  9. mysql_建立索引的优缺点 #转自Starzm#

    建立索引的优缺点: 为什么要创建索引呢? 这是因为,创建索引可以大大提高系统的性能.         第一.通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性.         第二.可以大大加 ...

  10. AJAX工作原理及其优缺点

    1.什么是AJAX?AJAX全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术.它 ...

随机推荐

  1. android camera 摄像头预览画面变形

    问题:最近在处理一下camera的问题,发现在竖屏时预览图像会变形,而横屏时正常.但有的手机则是横竖屏都会变形. 结果:解决了预览变形的问题,同时支持前后摄像头,预览无变形,拍照生成的jpg照片方向正 ...

  2. JS对表格排序(支持对序号,数字,字母,日期)

    JS对表格排序(支持对序号,数字,字母,日期) 前不久看到淘宝组件有"对表格排序的插件" 如想要看 可以看这个地址 http://gallery.kissyui.com/KSort ...

  3. JS获取客户端公网IP和IP地址

    网上解决方案 1.通过搜狐接口 获取方式如下: //网页端引入脚本 <script type="text/javascript" src="http://pv.so ...

  4. day79

    昨日回顾 昨日回顾: cookie: -是什么?存储在客户端浏览器上的键值对 -干啥用的?记录状态 -django中使用: -设置值: -HttpResponse对象,obj.set_cookie(k ...

  5. Feeling_2018_5_21

    “像我们这种普通的家庭,爸爸妈妈年纪大了有时候需要我们.” 或许真正的长大,不是去了多少地方,走了多少路,爱了多少人,赚了多少钱,而是你能以多大的努力为你的亲人.家庭负责任.如果你现在觉得自己过得很轻 ...

  6. Flutter - JSON to Dart,一个json转dart实体的网站

    如你所见,一个json转dart实体的网站,https://javiercbk.github.io/json_to_dart/

  7. kettle学习笔记(三)——kettle资源库、运行方式与日志

    一.kettle资源库 资源库是用来保存转换任务的,用户通过图形界面创建的的转换任务可以保存在资源库中. 资源库可以使多用户共享转换任务,转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文件 ...

  8. 大数据入门第十四天——Hbase详解(二)基本概念与命令、javaAPI

    一.hbase数据模型 完整的官方文档的翻译,参考:https://www.cnblogs.com/simple-focus/p/6198329.html 1.rowkey 与nosql数据库们一样, ...

  9. WPF EventTrigger,BeginStoryboard

    <Window x:Class="WpfApplication2.LoginWind" xmlns="http://schemas.microsoft.com/wi ...

  10. 20155216 Exp7 网络欺诈技术防范

    Exp7 网络欺诈技术防范 基础问题回答 1.通常在什么场景下容易受到DNS spoof攻击? 1.在同一局域网下比较容易受到DNS spoof攻击,攻击者可以冒充域名服务器,来发送伪造的数据包,从而 ...