首先,定义“更好”?这是一个非常主观的术语,完全取决于你想要什么。你的意思是更快?更广泛使用?更容易?提供更好的就业前景?提供更多可用的框架和库?我可以继续说下去。
哪一个比 PHP 更好,为什么?
有什么优势?
大量内置和第三方库/模块专门用于 Web 开发和服务器管理(服务器管理也适用于 Web 开发)。
这些第三方库设计精良,维护良好,易于安装,功能强大。
易于开发。如果你曾经编程过,你就会知道它有多么简单。
非常强大。它有助于替代 PHP。
就我个人而言,我讨厌 PHP 和 JS。它们用起来很烦人,而且都容易出现漏洞。更多的是因为 PHP 语言本身存在缺陷;因为古怪的规范存在缺陷,导致 JS 引擎无法很好地理解应该如何实现它。
完全面向对象。
非常适合数据处理和机器学习(如果您在平台上投放有针对性的广告,这一点很重要)。
使用正确的框架和模块(作为标准包含),您可以很好地与数据库服务器集成并自动为您的网站生成查询。
例如,如果用户在其帐户中搜索特定的许可证密钥,框架会通过将用户的操作转换为 SQL 查询来处理该问题。
示例 2:如果管理员通过电子邮件地址搜索客户,框架会将其转换为 SQL 查询,然后将结果转换回来并以 CSS 格式的 HTML 显示它们。
有什么优势?
有哪些弱点?
慢。真的很慢。比粉丝们承认的还要慢。正如互联网所说,PHP 的速度是它的 3 倍(有时快,有时慢,视情况而定)。
当你用它开发时,你不能认为你在使用它:你正在使用一个框架(例如)。所以学习它是不够的,你还必须学习框架。
它远没有 PHP 那么广泛使用,因此它的可利用性因素(尤其是对于 Web 开发而言)非常有限。我听说过一个统计数据,大约 80% 的网站使用 PHP - 我无法验证这个统计数据,但这不会让我感到惊讶。
这种情况与速度慢有关,但需要单独处理:资源使用。它比 PHP 占用更多的资源。你可能会想,如果它利用了这么多可用资源,那实际上可能有助于加快速度……不,不,事实并非如此。
总结:
JS 的 OOP 方面很糟糕。如果你曾经用 Java、C# 或 C++ 等语言做过 OOP,你就会明白我为什么讨厌它。任何依赖这个和 super() 的语言都做得不好。它使你的代码看起来非常混乱,使整个过程令人困惑,并使开发人员很容易犯错误。这根本就没有必要——整个语言方面感觉(我想我在这个网站的其他地方说过)就像被用锤子拴在一条盲鱼身上……事后才想到的。猜猜怎么着?就是这样!好吧,它不是拴在锤子上,而是一条鱼。但它只是事后才想到的,最初并不打算成为语言的一部分(它最初不包括在内)。
它是一种糟糕的、非常严格的 OOP 实现。同样,人们的看法也各不相同。有些人喜欢它,但他们通常说 C 和 C++ 很难而且令人困惑。
总的来说,还不错,对吧?我个人认为,从就业率的角度来看,上述语言与 PHP 相比,最大的问题是“市场份额”。
PHP
php
PHP 有什么优点?
非常快。
完全面向对象。
用于绝大多数后端网络服务和网站的“幕后”功能。
与 SQL 服务器和几乎所有类型的服务器很好地集成。
自动生成对数据库的查询(请参阅示例部分了解含义)
专为网络使用而设计的丰富的内置功能。
有许多 PHP Web API 可用,进一步扩展了其功能。
其中许多是专门为 PHP 设计的,不能与 一起使用。
许多电子商务 API
PHP 的弱点是什么?
PHP 的语法很糟糕。是的,这是一个观点,但这是一个非常普遍的观点。我曾经交谈过的每个 PHP 程序员也都持有这种观点。如果你还不熟悉它,那就去看看吧。
SQL 注入攻击。
如何使用 PHP 解决:
预防PHP应用程序中的SQL注入漏洞并进行修复
远程代码执行:
PHP 应用程序中的错误可能会接受用户输入并将其评估为 PHP 代码。
跨站点脚本(XSS [X = Cross]):
存储型 XSS 和反射型 XSS
绕过身份验证——从技术上讲,这是开发人员的错误,但语言本身使得犯这个错误变得非常非常容易。
PHP 的弱点是什么?
PHP摘要:
OOP 同样糟糕。语法可能更糟糕。它仍然使用 this(但实际上是 $this)
总之,这些漏洞虽然可怕,但主要还是开发者失误造成的。学好PHP,不仅要研究“我该如何做PHP开发”,还要研究“PHP开发陷阱”和“PHP漏洞”,这样就不会出现这样的问题了。
那么最终的结论是什么呢?不管 PHP 的粉丝们怎么说,PHP 都无法被完全取代,因为 PHP 有通用的特定 API,而且 PHP 在业界占据主导地位。
我知道我已经说了很长时间了,但这是我的最后一个观点,而且非常重要:开发人员应该选择一种“语言,因为它是最好的”的想法是现代教育体系和初级开发人员的巨大失败。为了真正精通任何开发领域,无论是网络、应用程序还是软件,您都需要掌握多种语言。对于一个可靠的老板来说也是如此。
轶事:当我刚开始从事该行业时,我记得当我询问并与之共事的开发人员告诉我他们懂汇编、C、C++、C#、二进制和十六进制时,我感到印象深刻。
现在我不是太感兴趣,因为我知道C,C ++,一些C#(学习更多),,,Java,HTML,CSS,一些PHP(学习更多),SQL,二进制,十六进制......他们仍然比我更有经验和技能,但我现在明白,了解多种语言是正常的,是需要做的事情。
所以总而言之,关键不在于哪一个更好,而是了解在何时何地使用它们。对于 Web 开发,您应该学习的最基本内容如下:
超文本标记语言
CSS
PHP
JSON(XML 替代)
SQL(MySQL、MS SQL 是 3 个主要数据库)- 注意不同的“风格”
以上几点对于职业来说绝对不可商榷。您也可以选择学习 Java。它对 Web 应用程序很有用。
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。