目录
回复内容:
首页 后端开发 php教程 看到有人说 PHP 是个垃圾语言,建议学习 Node.js、Python、Java,此话怎讲?

看到有人说 PHP 是个垃圾语言,建议学习 Node.js、Python、Java,此话怎讲?

Jun 06, 2016 pm 04:43 PM
java php

鄙人是个PHP的新手,买了java的手册还没开始看·这个说法让鄙人很受刺激,真心希望了解具体情况。

回复内容:

"Father, forgive them for they don't know what they're doing(saying) ... " - Jesus 你学你的,和其他人有关系吗?看书吧,孩子 此话纯属胡扯。不必纠结。 baidu.com/index.php,不多说 php入门简单,因为别的语言在写之前都需要调一个web框架,web框架会启动一个用相应语言写的web服务器,这个服务器的所有行为都是你可以控制的。
php不同,它其实本身就是一个web框架,它会运行在已有的web服务器上,在正式运行你的脚本前,它会帮你做很多事情(比如处理get,post参数啊之类的)

对于新手来说,其实你不需要知道这么多细节,你放一个php文件在文件夹里,在你访问这个文件对应的url的时候,php会自动帮你运行这个php脚本。所以你可以省去做很多工作。

对于网站来说,php提供的一切都很完美(这么多大公司在用),你完全不需要考虑底层的东西,集中精力搞应用层吧。

当你的编程经验达到一定程度的时候,你觉得自己想写一个web服务器(类似apache那样),php肯定做不了,这时候nodejs,python,java就可以做这样的事情。

网站除了后台,还有前端,这时候你就得学js,学了js你就发现还有nodejs可以学,然后你发现nodejs好强大,几行代码就能实现一个实时的应用程序,分分钟变成了全端工程师。

扯了这么多,我的建议是先学php,很多编程的技巧,经验都是想通的,再学js,其他语言看兴趣,java也不是太难,就是写起来比较繁琐。 首先,各种语言都有不同的特性,对应不同的应用环境有各自的优点和缺点。
对于某个具体的环境只有合适或者不合适的差别——表现在性能、开发效率、代码质量控制、兼容性、部署、维护、社区技术支持、框架、更新维护以及人力成本、基础设施要求等非常多的方面。
以垃圾来概括某种语言既是认为此种语言一无是处,这是缺乏事实依据的。很多唯性能论者和以某种语言来抬高自己身价的人经常会有这种言论。


我对楼主的建议:
1. PHP是一门很流行的语言,而且也在不断改进着。虽然由于其特性,在运行效率上不及某几种语言,但它的入门难度几乎是最低的(但想做到精通的话难度不下于任何一门语言),同时它的部署和维护难度也很低,有大量的开源项目和框架、社区支持

2. 做为一个有追求的开发者,不要把自己绑死在一种语言上。你的标题至少后半句是正确的:在学好一门语言的基础上,对网络/软件开发会有更深层的认识,求知欲会让你不满足于现状,学更多的东西去开阔眼界,弥补现在的不足。但切记学什么都要扎实,而不是为了向别人炫耀。作为一个谦逊的程序员,要时刻记得自己是站在巨人的肩膀上的,语言再牛逼,你也只是会使用的人而已。

这点事情就让你受刺激啊 你也太容易受刺激了 不要相信他胡扯 语言的优劣怎么能用垃圾这个词 Facebook是用PHP写的 说实话,这个是php的历史造成的

php现在是垃圾语言吗?当然不是,wordpress,drupal,eyeos,那个不是顶级的应用,那么关于php的成见何时开始的呢

在php4.0的时代,php有着很严重的问题,不支持面向对象,性能很差,同样因为不支持面向对象,很多逻辑的实现用代码写起来很不优雅,究其原因,php一开始的目标并不像java之类的语言那样远大,只是在web领域内做一个细分而已,嵌入HTML语句和内容的更新.这些使得php入门非常容易,但也更使计算机的专业人士看不上这种语言.
这儿找到一个关于php发展历史的文章 swoole.com/PHP.html

但恰恰因为php的简单,使得其安装,部署非常的方便,又只在web方面做优化,成为专门领域的语言,当web流行起来的时候,php也快速发展着,成为web语言里的强者

当一门语言流行后,这个语言的发展就会非常迅速,在php到5.0后,已经是一个里程碑,和之前已经完全不同,但之前的名声大大影响的现在的php,可以想象,php能够撑起全球最大的社交网站,其本身已经非常完善,性能也已经有了很大的提高,之前看过一个关于脚本语言的评测,php的性能已经在所有脚本里面能够属一属二了.

很多人批判php的语法,这个我觉得见仁见智,php沿用的C的语法,几乎没有改变,本身并不算差,主要是php的系统函数命名规范不一致,还有其他一些方面的原因,但这个不能妨碍php成为优秀语言的原因

如果你觉得php性能不够,用facebook的hithop编译下,用C++扩展,作为一门专业领域的语言,是很强大的,另外,对提问者说这些话的人,基本上都是道听途说,以讹传讹的 说这话的人都是浮躁的人,与其听别人这样说,不如去在实践中体会。 php设计哲学是包容性。开发效率完爆各种语言!因为他们要被php取代了,在公司没地位了,要失业了,所以恐慌了。说php效率的,一般在数据库的效率,mysql就这样。不用强加别人
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

您如何在PHP中解析和处理HTML/XML? 您如何在PHP中解析和处理HTML/XML? Feb 07, 2025 am 11:57 AM

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

php程序在字符串中计数元音 php程序在字符串中计数元音 Feb 07, 2025 pm 12:12 PM

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

解释PHP中的晚期静态绑定(静态::)。 解释PHP中的晚期静态绑定(静态::)。 Apr 03, 2025 am 12:04 AM

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

突破或从Java 8流返回? 突破或从Java 8流返回? Feb 07, 2025 pm 12:09 PM

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

什么是PHP魔术方法(__ -construct,__destruct,__call,__get,__ set等)并提供用例? 什么是PHP魔术方法(__ -construct,__destruct,__call,__get,__ set等)并提供用例? Apr 03, 2025 am 12:03 AM

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

说明匹配表达式(PHP 8)及其与开关的不同。 说明匹配表达式(PHP 8)及其与开关的不同。 Apr 06, 2025 am 12:03 AM

在PHP8 中,match表达式是一种新的控制结构,用于根据表达式的值返回不同的结果。1)它类似于switch语句,但返回值而非执行语句块。2)match表达式使用严格比较(===),提升了安全性。3)它避免了switch语句中可能的break遗漏问题,增强了代码的简洁性和可读性。

Java程序查找胶囊的体积 Java程序查找胶囊的体积 Feb 07, 2025 am 11:37 AM

胶囊是一种三维几何图形,由一个圆柱体和两端各一个半球体组成。胶囊的体积可以通过将圆柱体的体积和两端半球体的体积相加来计算。本教程将讨论如何使用不同的方法在Java中计算给定胶囊的体积。 胶囊体积公式 胶囊体积的公式如下: 胶囊体积 = 圆柱体体积 两个半球体体积 其中, r: 半球体的半径。 h: 圆柱体的高度(不包括半球体)。 例子 1 输入 半径 = 5 单位 高度 = 10 单位 输出 体积 = 1570.8 立方单位 解释 使用公式计算体积: 体积 = π × r2 × h (4

See all articles