2024 年 04 月编程语言排行榜,PHP 排名创新低?
编程语言的流行度总是变化莫测,每个月的排行榜都揭示着新的趋势。2024年4月的编程语言排行榜揭示了一个引人关注的现象:PHP的排名再次下滑,创下了历史新低。这种变化对于PHP开发者和整个技术社区来说,意味着什么呢?
PHP一度是Web开发的王者,但如今为何地位岌岌可危?其他语言又是如何崛起并逐步替代PHP的?
TIOBE 2024 年 04 月份的编程语言排行榜已经公布,官方的标题是:PHP 是否正在失去其魔力?(Is PHP losing its mojo?)
本月,PHP 在 TIOBE 指数中跌至历史最低点,早些年 PHP 作为脚本语言,特别适用于 Web 开发,很多网站都是用 PHP 代码写的,像 dedecms、Discuz!、,PhpWind 等国内的 CMS 系统都风靡一时,还有世界上网站用的最多的系统 Wordpress 到现在还非常的流行,这些都是使用 PHP 写的。
PHP 具有易学易用、灵活性强、性能稳定等优势,在 Web 开发领域广泛应用,再结合一些开源系统的流行,在当年 PC 时代,网站开发 PHP 基本是所有企业首选的开发语言。
同时被很多人称为:PHP 是最好的编程语言!!!
从下图可以看到,PHP 在本月已经掉到了第十七名,去年同期还在第九名:

早期的 PHP 的市场份额一度超过了 10%,甚至在 TIOBE 指数中排名前三,而本月市场份额已经掉落到 1.09%,让人唏嘘。
下图也可以看出,PHP 这几年已经开始逐步下滑,特别近几年 Python、Ruby、Node.js(JavaScript) 的崛起,很多网站开发都被这些语言替代了,并且在其他方面这些语言都表现的更优异。

目前,PHP 在中小型网站领域仍然占据着强劲地位,最流行的 Web 内容管理系统 WordPress 用的就是 PHP。
因此,短期内 PHP 也不会消失,但它的辉煌时代似乎已经过去了。
PHP(Hypertext Preprocessor)是一种通用开源脚本语言,特别适用于 Web 开发并可以嵌入 HTML 中。
PHP 最初由 Rasmus Lerdorf 在 1994 年创建,被设计用于快速开发动态网页,并且可以与多种数据库进行交互,包括 MySQL、PostgreSQL、Oracle 等。
PHP 优势:
-
易学易用:PHP 的语法借鉴了 C、Java 和 Perl,使得许多程序员可以相对轻松地学习和使用它。此外,它与 HTML 高度集成,使得在 Web 页面中嵌入 PHP 代码变得简单。
-
开源和免费:PHP 是开源的,可以免费使用,这使得它成为了许多开发者和组织的首选。同时,开源社区的贡献也使得 PHP 拥有丰富的扩展库和资源。
-
跨平台性:PHP 可以在各种操作系统上运行,包括 Windows、Linux、Unix 和 macOS,因此具有很好的跨平台性,开发人员可以在不同的环境中使用相同的代码。
-
强大的数据库支持:PHP 支持与多种数据库系统进行交互,包括 MySQL、PostgreSQL、Oracle 等,使得开发者可以轻松地处理数据操作和管理。
-
灵活性和扩展性:PHP 具有丰富的内置函数和第三方扩展,同时也支持自定义函数和类,使得开发者可以根据项目需求进行灵活的定制和扩展。
-
快速开发:PHP 的语法简单直观,结合丰富的函数库和开发工具,使得开发者可以快速构建动态网页和 Web 应用程序,提高开发效率。
-
大型社区支持:PHP 拥有庞大的开发者社区,提供了丰富的文档、教程和论坛,开发者可以在社区中获得支持、分享经验和解决问题。
PHP 语言版本历史:


目前流行的各个版本支持时间:

PHP 官方网站:https://www.php.net/
PHP 入门教程:https://www.runoob.com/php/php-tutorial.html
PHP 历史排名变动图:

本月,排名前十的分别是:
Python,C,C++,Java,C#,JavaScript,Go,Visual Basic,SQL,Fortran。

Python,C,C++,Java,C#,JavaScript,Go,Visual Basic,SQL,Fortran 历史变化曲线图:

排名 11-20 的编程语言,PHP 已跌到 17:

排名 21-50 的编程语言:

51-100的编程语言:
ABC, ActionScript, Apex, APL, AutoLISP, Bash, bc, Boo, Carbon, CFML, CHILL, CIL, CL (OS/400), Clojure, Cobra, Curl, DiBOL, Eiffel, Elixir, Elm, Groovy, Hack, Icon, Idris, Inform, Io, J, LabVIEW, Lingo, LiveCode, Maple, MQL5, Nim, OCaml, OpenEdge ABL, Oz, PL/I, PostScript, PowerShell, Pure Data, Q, Racket, Ring, Smalltalk, SNOBOL, Solidity, SPARK, SPSS, Wolfram, X++
各大编程语言的历史排名(1988-2024):

编程语言“名人榜”( 2003-2023):

TIOBE 每个月都会公布一次编程语言的排行榜,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、百度、维基百科等等。
数据反映目前主流编程语言的变化趋势,对我们学习和工作可作为一个参考,但各个语言都有它们各自适合的应用场景,所以也不必过于在意,毕竟语言的好坏在于如何去使用它。
以下视频是近几十几年来编程语言的变化趋势:
参考:https://www.tiobe.com/tiobe-index/
编程语言的变化趋势不仅仅关乎开发者的选择,也反映出行业需求的变化。随着全栈开发、云计算和微服务架构的普及,市场对高效、灵活的语言需求显著提升,而这些正是许多传统语言逐渐被替代的原因。
PHP在编程语言排行榜中的下滑,提醒着开发者时刻保持对新技术的关注和学习。尽管曾经是无数Web开发者的首选,但技术的发展从未停歇,拥抱变化才是与时俱进的根本。
“在技术的浪潮中,没有永恒的霸主,只有不断创新的追随者。”

相关文章:
2024 年 04 月编程语言排行榜,PHP 排名创新低?
编程语言的流行度总是变化莫测,每个月的排行榜都揭示着新的趋势。2024年4月的编程语言排行榜揭示了一个引人关注的现象:PHP的排名再次下滑,创下了历史新低。这种变化对于PHP开发者和整个技术社区来说,意味着什么呢? P…...
Element中el-table组件设置max-height右侧出现空白列的解决方法
之前就出现过这个情况,没理过,因为不影响啥除了不美观...但今天看着实在是难受,怎么都不顺眼(可能是我自己烦躁--) 试了很多网上的方法,都不得行,后面发现了这篇文章,解决了! 感谢! Element中t…...
unity学习-全局光照(GI)
在全局光照(Lighting)界面有两个选项 Realtime Light(实时光照):在项目中会提前计算好光照以及阴影的程序,当你需要调用实时全局光照的时候会将程序调用出来使用 Mixed Light(烘焙光照&#x…...
记录Centos7 漫漫配置路
记录Centos7 漫漫配置路 一、 配置源二、 clinfo三、 PCL 配置1. 依赖2. eigen3. boost4. flann5. pcl 四、YAML-CPP五、 miniconda 安装 python3.6 和 pytorch六、libbot 配置1. 容易安装的依赖2. 需要源码安装的依赖3. [libbot](https://github.com/libbot2/libbot2) 简单地说…...
论文 | OpenICL: An Open-Source Framework for In-context Learning
主要内容: 2. 提供多种 ICL 方法: 3. 完整的教程: 4. 评估和验证: 背景: 随着大型语言模型 (LLM) 的发展,上下文学习 (ICL) 作为一种新的评估范式越来越受到关注。问题: ICL 的实现复杂…...
尚硅谷rabbitmq 2024 Federation配置 第60节答疑
rabbitmq联邦队列怎么做 要在 RabbitMQ 中设置联邦队列(Federated Queues),你需要遵循以下步骤。联邦队列允许你在不同的 RabbitMQ 实例之间共享队列,从而实现消息的分布式处理和高可用性。 ### 步骤 1:安装 RabbitMQ…...
Ubuntu编译MySQL驱动连接QT
1、安装MySQL 安装MySQL软件以及驱动。 sudo apt-get install mysql-serversudo apt install mysql-clientsudo apt-get install libmysqlclient-dev 2、编译qmysql驱动 2.1、修改mysql.pro 找到Qt源码中的mysql.pro项目文件,一般位于:/opt/Qt/5.15…...
时间序列预测(七)——梯度消失(Vanishing Gradient)与梯度爆炸(Exploding Gradient)
目录 一、定义 二、产生原因 三、解决方法: 梯度消失与梯度爆炸是深度学习中常见的训练问题,它们主要发生在神经网络的反向传播过程中,使得模型难以有效学习。 一、定义 1、梯度消失(Vanishing Gradient)…...
ARM assembly 12: GCD(最大公约数)计算
首先,我们看看GCD(Greatest Common Divisor)的CPP实现 int gcd(int a, int b) {if(b 0) return a;return gcd(b, a%b); }基于下面的gcd.s文件,我们尝试实现gcd函数 //gcd.s .global main .extern fopen, fprintf, fclose, printf, atoi.section .dat…...
「实战应用」如何用图表控件LightningChart可视化天气数据?(一)
LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学…...
基于深度学习的细粒度图像分析综述【翻译】
🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️ 文章目录 基础信息0 摘要1 INTRODUCTION2 识别与检索 RECOGNITION VS. RETRIEVAL3 问题和…...
yolo笔记
目录 Anaconda安装Pytorchyolov5下载部署labelimg安装 Anaconda安装 官网链接 https://www.anaconda.com/ 官网链接链接: 官网链接https://www.anaconda.com/ 直接下最新版 (网站会自动检测系统,我是在Windows环境截图的) bash Anaconda3-XXXX-Linux-x86_64.sh一…...
Android平台RTSP|RTMP播放器PK:VLC for Android还是SmartPlayer?
好多开发者,希望在Android端低延迟的播放RTMP或RTSP流,本文就目前市面上主流2个直播播放框架,做个简单的对比。 VLC for Android VLC for Android 是一款功能强大的多媒体播放器,具有以下特点和功能: 广泛的格式支持…...
IDEA下面的Services不见了(解决方案)
大家使用IDEA有时候新打开个项目这个东西不会自动出现如何解决 配置方法: 右上角打开进入Edit Configurations 进入后我们看到里面是没有SpringBoot相关内容的 点击加号选择SpringBoot 然后Apply Ok即可,现在IDEA下面就会出现Service了,打…...
【pyspark学习从入门到精通7】DataFrames_2
目录 创建 DataFrames 生成我们自己的 JSON 数据 创建 DataFrame 创建临时表 简单的 DataFrame 查询 DataFrame API 查询 SQL 查询 创建 DataFrames 通常,您会通过使用 SparkSession(或在 PySpark shell 中调用 spark)导入数据来创建 …...
Server-Sent Event(SSE) GPT场景实现
关于SSE的基本概念可以看一下阮一峰老师的这篇文章:Server-Sent Events教程。 现在比较常见的场景是gpt回答的时候类似下图这种打字机的情况,因为AI一般响应时间会比较长,使用这种方式能让人别等那么久,是一个相对比较良好的用户…...
美国Honeywell霍尼韦尔气体分析侦测器传感器MIDAS-K-HCL说明书
上海德奥达 ---Honeywell霍尼韦尔气体分析侦测器传感器MIDAS-K-HCL是一款用于检测氯化氢气体的高性能传感器。以下是该传感器的技术参数和描述:技术参数:-测量范围:0-50ppm-灵敏度:0.5ppm-响应时间:≤30秒-电源&…...
L1练习-鸢尾花数据集处理(分类/聚类)
背景 前文(《AI 自学 Lesson1 - Sklearn(开源Python机器学习包)》)以鸢尾花数据集的处理为例,本文将完善其代码,在使用 sklearn 的部分工具包基础上,增加部分数据预处理、数据分析和数据可视化…...
javaweb以html方式集成富文本编辑器TinyMce
前言: 单一的批量图片上传按钮,禁用tinymce编辑器,但是还可以操作图片编辑; 多元化格式的富文本编辑要求; 采用tinymce实现。 附: tinymce中文手册网站: http://tinymce.ax-z.cn/download-all.…...
大学生福音!用GPT-4o几分钟内轻松读懂一篇论文!
文章目录 一、读论文智能体:PDFAI操作指导阅读论文上传论文并分析进一步研究导出可用代码 二、感受 一、读论文智能体:PDFAI 操作指导 ChatGPT 4o国内直接访问地址:https://share.xuzhugpt.cloud/ 上plus的车 输入购买的授权码即可。 默认…...
职场“对错陷阱“:为什么你越是讲理,领导越不待见你?
导语:小时候老师教我们"明辨是非",长大后却发现——在职场里太较真的人,往往混得最差。一、拍桌子的代价2023年春天,我亲眼看见林哥在会议室拍了桌子。"这需求根本不合理!数据库设计违反第三范式&#…...
3个关键步骤掌握BetaFlight黑匣子日志分析:从新手到专家
3个关键步骤掌握BetaFlight黑匣子日志分析:从新手到专家 【免费下载链接】blackbox-log-viewer Interactive log viewer for flight logs recorded with blackbox 项目地址: https://gitcode.com/gh_mirrors/bl/blackbox-log-viewer BetaFlight Blackbox Log…...
基于人工电场搜索智能优化算法的水库发电和供水优化调度
基于人工电场搜索智能优化算法的水库发电和供水优化调度; 代码为MATLAB编写,可直接运行; 含有实例数据,点击即可运行,替换成自己数据点击即可出结果,如图。在水库管理中,实现发电和供水的优化调…...
避坑指南:三自由度机械臂DH参数建模与逆解求解的那些‘坑’(从理论到Matlab/Python验证)
三自由度机械臂运动学建模实战:从DH参数陷阱到逆解验证 机械臂运动学建模是机器人学中最基础却最容易踩坑的领域之一。很多工程师和学生在理论学习阶段看似掌握了DH参数法和正逆运动学推导,但一旦动手实践,总会遇到各种"诡异"的问题…...
Umi-OCR插件技术深度解析:如何构建高效的文字识别工作流
Umi-OCR插件技术深度解析:如何构建高效的文字识别工作流 【免费下载链接】Umi-OCR_plugins Umi-OCR 插件库 项目地址: https://gitcode.com/gh_mirrors/um/Umi-OCR_plugins Umi-OCR插件库为文字识别任务提供了多样化的解决方案,涵盖了从本地CPU加…...
AI训练神器!免配置YOLO可视化工具,标注+训练+推理全流程集成,支持YOLOv8~v12+50系显卡,开源可二开
AI训练神器!免配置YOLO可视化工具,标注训练推理全流程集成,支持YOLOv8~v1250系显卡,开源可二开 yolo可视化训练工具,免配置环境,打开界面即可训练yolo模型,提供源代码及完整打包项目,…...
3个高效学习技巧:如何用JiYuTrainer实现课堂学习体验优化
3个高效学习技巧:如何用JiYuTrainer实现课堂学习体验优化 【免费下载链接】JiYuTrainer 极域电子教室防控制软件, StudenMain.exe 破解 项目地址: https://gitcode.com/gh_mirrors/ji/JiYuTrainer 问题场景:当数字化教学遇上学习需求冲突 "…...
GetQzonehistory完整指南:三步实现QQ空间历史说说一键备份
GetQzonehistory完整指南:三步实现QQ空间历史说说一键备份 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory GetQzonehistory是一款专为QQ空间用户设计的智能数据备份工具&…...
别再死记硬背了!用Treap(树堆)搞定LeetCode平衡树难题,附C++完整模板
Treap实战指南:用随机化平衡树高效解决LeetCode难题 1. 为什么选择Treap而非传统平衡树? 在算法竞赛和面试场景中,我们经常需要处理动态有序集合的操作。传统平衡树如AVL和红黑树虽然能保证严格的平衡性,但它们的实现复杂度往往让…...
Hypervisor环境下高效进程间通信技术解析
1. Hypervisor环境下的进程通信挑战 在虚拟化技术大行其道的今天,Hypervisor环境下的进程间通信(IPC)已经成为系统性能的关键瓶颈。想象一下,你住在小区同一栋楼的两个单元里,明明直线距离只有10米,却要绕到…...
