问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

为什么要使用 PHP

发布网友 发布时间:2022-04-22 06:07

我来回答

2个回答

懂视网 时间:2022-04-06 08:04

【相关学习推荐:php图文教程】

我们来开门见山地说。 PHP 是一门奇葩的语言。它既不快,语法又不漂亮。还没有遵守良好的软件开发实践。 但我还是使用它开发了很多软件。 那么问题就很明显了 为什么今天还在使用 PHP ?

除了个人理想主义的偏好以外,还有很多理由。这才是我们要讨论的范围。为什么选 PHP 作为我的 Web 开发语言?

PHP 是什么?

「PHP 代表什么意思?」 或者这么问,「PHP 是什么?」 PHP 是一门编写 web 页面的语言,底层使用 C 语言实现,使用 HTML 的标签语法包裹代码。PHP 通常跑在服务端,与 web 服务器配合工作,负责把 HTML 加工完返回给访问者。

PHP 最初的意思是 「 Personal Home Page 」。因为这完全限制了使用该语言进行一般使用的意义和可取性,所以该语言现在代表「 PHP:Hypertext Preprocessor」。这种写法被称为递归缩写(一种全称中引用自己的缩写)。 极客们都喜欢用这种名字。

PHP 能做什么?

PHP 能用来做什么?通常来说 PHP 能做任何你想在 web 服务器上实现的东西。 比如说做一个博客。实现一个 SAAS 应用也完全不在话下。写一个临时处理数据的脚本也是得心应手。又或者写了一个复杂的脚本,某一天突然变成了一门成功的软件业务?过去也经常发生。

如果你不相信我,可以看下 PHP 官网列出使用场景:

  • 服务端脚本
  • 命令行脚本
  • 编写桌面应用
  • 我不太鼓励最后一项,但它确实可行。但是前两项确实是很棒的理由 。

    这就引出了一个重要且无法回避的事实...

    PHP 无所不在

    了解和喜爱 PHP 的理由有非常多,可能最给力和有效的理由是:它可以在网络的任何地方使用和运行。如果你仔细寻找,你买到每月最低3美元的托管账户可能可以运行 Python 或 Ruby 的 Web 应用程序。但它肯定能运行 PHP 。这意味着无论什么时候你都可以依赖 PHP 。

    因为 PHP 可以运行在任何地方,并且它容易上手,很多非常受欢迎的软件都是用 PHP 写的。 WordPress 是对我影响最大和最熟悉的例子,除此之外,像 Joomla , Drupal , Magento , ExpressionEngine , vBulletin (是的,它仍然存在), MediaWiki 等这些工具,它们都在服务器上运行 PHP 。

    不仅如此,PHP 应用框架更是多得数不胜数, 比如:Symfony , Zend , Laravel , Aura , CakePHP , Yii 甚至是古老的 CodeIgnitor 框架。当然你可以为其它任何一门语言制作一些长度相当的 Web 框架列表。比如常用的 Web 语言像 Python , Ruby ,或 Node/JavaScript ,你甚至可以积累一个数字竞争列表来跟 PHP 比较。但运行 PHP 的网站数量庞大到无法估计。

    WordPress 自豪地声称在互联网上有 30% 的用户量。 你甚至不需要相信这个说法就会意识到许多的互联网应用必须使用 PHP 即使这个说法甚至可以想象成是真的。

    PHP 的优点

    动态化特点

    file

    PHP 和 HTML 可以非常融洽地工作在一起。将 file.html 修改为 file.php ,即可在 <?php?> 标签里编写 PHP 代码,并且大部分的 Web 服务器默认配置就是可以直接运行 PHP 脚本。正因为其门槛非常低,不需要懂太多编程知识的菜鸟程序员也可以直接上手操作,以至于产生了很多低品质的代码。

    因为其易学性,大量的菜鸟程序员涌入,暴露出来另一个 PHP 一直被人诟病的问题:PHP 并没有对自己是最好的 Web 服务器端语言有清晰的远景,当然也没为此做过太好的设计。导致走向了另一个结果,来自全球各地松散的合作,大杂烩般地贡献代码和想法,难以避免地,有一些坏的想法渗入其中。

    拥有强大的面向对象包管理是现在 PHP 中的一种标准

    file

    Composer 是 PHP 的加分项。

    在 PHP 的开发中,经常会有一些奇葩的东西被发布出来。最著名的栗子当属 PHP 5.3 (广泛的被视为 PHP 的第一个现代化版本 )中引入 goto 声明。

    类似的问题是在 PHP 成长过程中产生:面向对象最初是作为一个有缺陷和有限制的概念来实现的,标准库中充满了不一致的名称和参数排序,并且(举个近来备受关注的栗子)在 PHP 5.3 中 :: 操作符无法识别时,解析器会抛出可读性很差的报错信息:语法错误 (T_PAAMAYIM_NEKUDOTAYIM) ,如果不看文档,你能用英文来理解这个 T_PAAMAYIM_NEKUDOTAYIM 标示的意思吗?

    但是现在,PHP 已经完全支持 OOP。很少语言具有像 PHP 这样类似 Java 的 OOP 实现。另外,与 Java不同的是,PHP 有一个单独的并拥有广泛支持的包管理器,叫作 Composer。它非常的好用,并且不容忽视的一点是它可以方便地引用优质且维护良好的库,具有很高的易用性。

    PHP 的高速发展

    file

    通过这些事实发现, PHP 正在以有趣的方式发展着。它正逐渐成为像java一样功能齐全的面向对象语言(更好或更糟糕),正在为函数式编程提供简单的抽象,这可以说是当前的热点。并且,正在发展一套非常棒的工具, PHP 喜欢 Composer , 并有充分的理由 --- 因为它在一些大型开源项目的协同工作上做出了值得赞扬的努力.

    当然,我们不应该忘记当前的热点:PHP 在 PHP7 系列版本中的发展取得了速度上的提升。这被广泛认为是由 Facbook 出现的 HHVM 引起的,在短时间内,存在 HHVM 的发展速度会破坏 PHP 社区的风险,但事实并非如此,相反,PHP 的发展速度快得多,以至于人们几乎忘记了 HHVM 的存在。

    PHP 有一个巨大的社区;它对新手友好。

    如果你决定使用什么很酷的新技术,我认为经常得到很少关注的是与语言达成协议的方式。学习PHP是什么感觉? PHP教程很好找,质量通常也很好。

    PHP流行的一个缺点是,你会从那些对工具不够了解的人那里找到一些不那么好的教学。或者从某人那里学到的“最佳实践”是十年前的。但总的来说,这很少见,我不认为它应该让你灰心。或者突然发现自己使用了几个月的最佳实践并不是最好的是很少见的,也不是一个大问题。

    PHP 与其他语言的比较

    接下来我们要对比下 PHP 与其他的语言,这些语言需满足以下要求:

  • 开源:意味着你可以自由、免费地使用或者查看底层语言或者程序;

  • 应用于 Web 开发领域:不一定是专注于 Web 开发,但是在 Web 开发中有比较大的应用;

  • 高阶动态语言:具备动态语言的特性,大部分面向 Web 应用的语言兼具此特性;

  • 足够大的社区:有很多满足以上条件,但是只是在小范围使用的语言,我们使用这最后一个条件将他们过滤掉。

  • 为什么使用 PHP?而不是 JavaScript?

    也许和 PHP 比较的最重要的语言是 JavaScript。现代开发要求每个项目都至少会一点 JavaScript 来进行客户端开发和交互。借助 Node,这使得在服务器上使用 JS 变得相对简单。在服务器上和客户端“同构”使用相同的语言非常吸引人。

    如同 PHP,JavaScript 是一个兼容并蓄但有时丑陋的语言,有很多的瑕疵和“陷阱”,但 JavaScript 在过去十年变得非常快,所以他的情况是真实的。为什么选择 PHP 而不是 JavaScript?你已有专业知识或者在 PHP 使用库。否则,我认为 JavaScript 或许是个更好的选择。

    PHP 对比动态服务器页面 (.Net Core)

    动态服务器语言起源于一个用于网友编程的 Microsoft 语言。他和 PHP 非常直接相似。但他运行在 Windows 服务器环境。这被 ASP.net 取代了。现在已被 ASP.NET Core 取代。后两者现在是 PHP 一样的开源语言。而我个人从没有在任何变体中写过一点 ASP。

    如果我使用且更喜欢 Microsoft 服务器的话,我会更喜欢 ASP。其他情况,请给我 PHP。两者社区的规模和大小没有可比性。

    我应该使用 Ruby 还是 PHP?

    Ruby,特别是 Ruby on Rails,在过去十年前 非常 受欢迎。Ruby 依然是一个备受喜爱的语言,这在我看来他比 PHP 优雅。也就是说,他的社区较小。同时我认识到 Ruby 已经不再是 "热门语言"(被 JavaScript 取代了此角色)。Ruby 的优雅,并且有足够多的人擅长使用,因此我不会避免他。但招聘已熟悉 Ruby 的人依旧比招聘 PHP 要难。(虽然我认为一般的 Ruby 开发者水平比相同的 PHP 开发者要高。)

    Python vs PHP:谁更好一些?

    最后一种与 PHP 一对一比较起来有意义的是 Python 。 Python 的使用场景要更多,相对于专注于 web 开发的 PHP 来说(尤其是在数据统计与分析上面)。而且人们普遍都觉得它是一种更为更稳定和优雅的语言。

    就像 Ruby 和 JavaScript 一样, Python 在服务器上运行要比 PHP 稍微麻烦一点。但是它是一种非常完美的语言,而且比起 PHP 的使用更具多样化,我认为它是比 PHP 更流行的语言之一,而且在其他方面(例如:各种第三方的库、专业技术知识的获取、招聘求职)都是一样的。

    PHP vs Go 语言?Scala语言?Java语言?等等

    一开始曾提到过,许多语言在做比较时或多或少会有一些相似的地方。这里有很多的语言可以拿来做对比,因此简单的聊几个:

  • java 非常受欢迎,并且效率很高。通常被用来搭建安卓应用程序,桌面应用程序,和 web 端应用。不过,它不是动态类型的,它有更好的性能保证,但很适合Web 编程。

  • Go 是 Google 支持的正在发展的一门新语言。它专注 web 服务。但是这块相比 PHP 还是有些不足(更像 C 语言),它的执行速度很快,但是社区相对有限。

  • Scala 是一种流行的运行在内存区(Java 兼容)的语言,也似乎越来越受欢迎。它比 PHP 设计的更优雅,但是除此之外,似乎没有更多了。

  • 此外,我觉得这些分析足够可以做出选择了,但是你有更多的选项可以去考量,不过最后我的替代方案将会考虑 PHP。

    需要按需选择编程语言

    有了上面的比较,为什么还要使用 PHP ?上文我已经提过了一些 PHP 里坏的设计,有一些我经常性会经历,例如在『查找类型的函数』里,这些函数needle 和 haystack 顺序不一致,在没有代码补全的环境下,我还是会掉坑里。

    如果你在构建一个全新的 Web 项目,并且此项目不需要与其他系统交互,并且只有你一个人在工作,你想试试看其他语言,类似 Python 什么的。但是,你需要知道的是,即使是这样的一个项目,还是有很多理由让你选择 PHP。

    任何现代化的语言都可以让你构建一个 Web App。每一门语言都有他们不足之处,例如 PHP 就是这样的,PHP 要求你清晰地了解其不足之处,然后才能决策是否要在项目里使用它。但是对于我来说,我仍然会选择 PHP 来构建我的 Web 项目,就如 Keith Adams 在其 演讲里 提到的:

    PHP 的开发效率真不是一般的高。

    如果你有一个 Python 的团队,请使用 Python。如果你有个合伙人熟悉 Java,请使用 Java 来编写你的 SaaS 程序。语言,永远都不是最重要的。

    相关学习推荐:php编程(视频)

    热心网友 时间:2022-04-06 05:12

    你好,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等。
    PHP有什么作用

    1、开源和免费:PHP属于编程语言中的通用开源脚本语言,源代码是公开的,而且运行环境也不需要收费。2、快捷实用:PHP语言学习难度低,语法简单,容易操作而且实用。3、数据库连接的广泛:PHP可以利用编译的不同函数连接很多主流的数据库。比如MySQL、ODBC、Oracle等。4、面向过程和面向对象并用:可以分别使...

    什么是PHP,PHP能干什么,为什么使用PHP

    它的资料更新很大程度上能满足使用者的"个性化需求",即在内容上和风格上接近使用者所想,该系统完全图形视觉化,即使不懂制作网页的专门技术,不懂HTML语言,通过对该系统中如栏目、模板设定、网站关键字、功能模组等进行引数设定,使用者也可以用它轻松地制作出千变万化、色彩丰富的网站。为什么使用 PHP...

    php是干什么用的

    1、制作网站:php最简单的应用就是制作网站,包括数据库类操作、社区、系统和管理。2、写爬虫:写爬虫,也就是我们说的数据采集,虽然不是php的强项,但只要你的php技术足够好,也是可以用php来写的。3、辅助开发:可以用php来辅助其他的东西来做开发,比如电子地图。4、开发框架:可以用php来开发框架...

    php是什么意思

    另外,PHP是一种简单易学的语言,上手容易,学习曲线相对平缓。对于开发人员来说,使用PHP开发Web应用程序能够显著提高开发效率和降低开发成本。由于它的广泛使用以及在各行各业的深度渗透,无论是建立电子商务网站还是开发企业级应用,PHP都是一门非常流行的语言选择。正是由于上述这些优势,使得PHP在网络开发...

    作为世界上最好的语言——PHP 到底好在哪

    phper不需要思考使用哪种数据结构,只需使用php array即可,这大大降低了心智负担,降低了学习门槛。与Java相比,PHP的学习曲线更为平滑,当需要深入时,查看array相关的函数会有新的理解。透过PHP的源码,我们可以看到array、k-v array、class等底层都是HashTable。这样的内存管理可能有些粗放,但使得PHP...

    php在开发网站上有什么用

    嵌入于HTML:因为PHP可以被嵌入于HTML语言,它相对于其他语言,编辑简单,实用性强,更适合初学者。 4、跨平台性强: 由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。 5、效率高: PHP消耗相当少的系统资源。 6、图像处理: 用PHP动态创建图像 7、面向对象: 在php4,php5 中,...

    php语言是干什么的

    PHP语言是一种用于Web开发的服务器端脚本语言。首先,PHP主要用于开发动态网页和Web应用程序。它能够与HTML混合使用,使得开发者能够在网页中嵌入PHP代码,从而实现网页的动态内容展示。例如,一个使用PHP的网页可以根据用户的不同请求,从数据库中获取数据并实时显示在网页上。这种动态交互的特性使得PHP在Web...

    请详细描述php的特点?

    php的优点有哪些PHP作为一种脚本语言,有以下几个优点:1.易于学习和使用:PHP的语法易于理解和上手,对初学者来说比较友好,很容易掌握。2.高度兼容性:PHP可以运行在几乎所有的操作系统上,并且支持大多数的Web服务器和数据库。3.足够的扩展性:PHP支持大量的扩展和库,各种功能模块化,方便快捷的模块...

    php是什么意思

    一、PHP的基本定义 PHP是一种用于创建动态交互性站点的强有力的服务器端脚本语言。它被广泛应用于网页开发,使网站能够执行动态网页技术,比如表单提交、数据库连接和文件上传等。二、PHP的特点 1. 开源和免费:PHP是开源的,这意味着开发者可以免费使用并根据需要修改代码。2. 跨平台兼容性:PHP可以在...

    2020年为什么我们还会继续使用 PHP ?

    PHP的独特之处在于其社区支持、开发效率以及在特定领域的适用性。选择PHP意味着接受其优点和缺点,而这取决于具体项目的需求和个人经验。综上所述,尽管PHP存在一些问题,但其灵活性、易用性和广泛应用性使其在2020年仍然活跃于Web开发领域,选择PHP,意味着对特定环境和任务的适应性和效率的追求。

    借呗怎么使用 互传怎么使用 怎样使用 在使用 使用 如何使用 最近使用 如何正确使用 地的使用方法
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    借款担保人被拘15天,现在拘留所说法院下通知续15天,这样可行吗! 贷款未还拘留担保人,现在拘留了15天了法院说还要15天,这个可以一直连续... 拘留期间能与家人见面吗 我帮朋友担保了四万元钱,现在法院要我还,不还就要拘留我,请问法院能... lol后期6神装谁能单挑龙龟?狗头和小法不算。 仓储合理化的有效措施有哪些 英雄联盟团战致命错误有什么 如果所有人都把攻击打到龙龟身上,是不是一... 英雄联盟,他们都说剑姬是单挑王,可是,后期,龙龟龙女随便一个肉,一堆... 英雄联盟打野剑圣要出什么装备才可以打得过全肉龙龟? 我出的是 攻速... 收集张家港各乡镇逢集表 最好附有详细地址和日期 回答满意的加分 戴尔报修电话多少?? 电视电脑转换器是什么? 谁知电视电脑一体机怎样切换 电脑液晶电视怎么轻松转换? 电视电脑一体机怎么切换,电视电脑一体机怎么切换知识 关于导游证????? 见习导游证 问题 大专学历可以报考导游证吗? 液晶电视转换为电脑可以吗?要怎么做呢? 导游证好考吗?我以后不打算做导游,只是想在大学... 异地买房子可以使用本地住房公积金吗? 住房公积金可以异地买房吗 报导游证 本地公积金到外地买房能用嘛? 关于导游证。。。。 考导游证要经过哪几个步骤 在本地买的住房公积金在外地买房能用吗 实习生需要导游证吗? 本地交的公积金异地买房可以贷款吗 本地公积金可以在外地买房吗? php为什么要被淘汰 为什么要选择PHP开发网站,PHP有什么优势 5s可以升级ios13吗 php是什么意识 php是什么? php是什么是什么 这些动物手机背景图片求出处或者是哪里弄的 ps专家帮忙把狗p成霸气的动物,背景也换霸气一点 闲磕一堂关于动物主题背景 有没有类似这种黑色背景的动物头图片???什么动... 求一张图片,是一只狼在仰天长啸,背景是圆的月亮 谁能给点有森林里有好好多动物的背景素材,先谢谢了 男生标准三围和健美三围 纯背景动物卡通图 嚣张霸气的动物是什么 男生的围巾的围法 有霸气的动物 谁能帮我设计个签名!!!不要太草最好再加点背景... 学生时代的男生怎样围围巾 十二生肖什么动物最霸气?