PHP作为web开发脚本语言,为什么具有不可替代性

kaleok 15天前 7

PHP作为web开发脚本语言,为什么具有不可替代性,并且直到现在也一直在更新,原因很简单
PHP强大的内置函数处理几乎遇到的任何业务逻辑,都可以高效完成,这是其他语言不能比的,PHP内置函数
但是:内置函数,就是具有一定功能的代码块,其存在的目的类似一个现实语言的字典库,比如学习英文的单词背诵,学习中文的汉语词典等等
所以掌握必要的PHP内置函数可以提高开发效率,但并不是一定要死记硬背内置函数,也不是能记住更多的内置函数就表示你的开发能力更强。
比如你的这些内置函数处理多维数组非常方便,但实际上一个web应用,数据来源于数据库,同样的事情,实际上sql语句在数据库中就可以高效处理完成。
也就是目前web项目的瓶颈并不在脚本语言,而是在数据库。
当然这是项目开发的架构问题,
比如有些架构认为,数据库应该只是数据仓库,尽量少用高级复杂sql查询语句,而把数据拿到php等脚本语言后,再用php的高效内置函数来处理。
另外一些架构会认为,数据库本身就是一个高效的数据业务处理软件,能在数据库中使用sql就能处理的业务,就是最高效的业务。
最后也有可能,在高并发下,需要做业务缓存,缓存又分数据缓存和页面缓存。
如果使用redis,那到底是靠复杂的sql先查询出结果集,然后存入redis方便调用,
还是redis只是镜像储存数据库表,只是让php去高效查询redis的数据,然后再用内置函数来处理数据呢?
等等问题才是一个PHP水平的高低区分。也就是一个web项目,单独来说php好,或者mysql好,或者什么语言好,什么数据库好,是没有意义的。
还有一个非常大的误区很多网上的语言性能比较,都是单语言运行时的性能比较。但在web项目中,nginx等服务器引擎才是面对用户请求的入口软件,而nginx是多进程的,调用php都是被动的php-fpm方式.虽然php单独来讲是单进程,单线程。但是被被动调用时,可以理解为php是nginx多进程,多线程方式下激活多个php实例而已。所以单独来比较语言性能也是没有含义的。
比如,实际上任何一个后端语言,都可以单独监听端口,开发web访问,也就是可以当作服务器web引擎来使用,那为什么大家都用nginx,而不是单独的其他语言来监听端口呢?因为nginx就是为服务器引擎而生的,直接面对客户端请求,强大的多进程,多线程模式,没有其他软件能达到它的处理能力
所以,到底在争论什么呢?如果php使用类似swoole的扩展,同样可以做多线程,多线程。
所以找准一门语言,先学下去吧。一个开发留言板或博客的初级程序员,却喜欢去讨论高并发,语言高性能等等话题,是没有任何含义的。
任何一门语言存在就合理,都在自己擅长的位置具有一定的优势。
最新回复 (11)
  • 本人马保国 15天前
    引用 2
    因为PHP=拍黄片
    符合码农的爱好
  • 鹏宇 15天前
    引用 3
    PHP是最好的编程语言 不接受反驳
  • gick 15天前
    引用 4
    谢谢科普
  • heihai 15天前
    引用 5
    好乱,还好我不做开发
  • u104b230 15天前
    引用 6
    PHP沒有高效吧,PHP內建是沒有多線程的,另外只要能達到想要功能,都是好語言,PHP能做到其他語言也能做到,會比較甚麼好,都是效能差別,PHP能那麼流行,主要是因為好學習
  • dollck 15天前
    引用 7
    PHP如今已被逐渐替代,但web之王地位尚未撼动
  • ApkB 15天前
    引用 8
    除了先发优势,普及率高外,没看出什么不可替代性啊
    早期ASP和PHP较火,慢慢的ASP少了,PHP改来改去活了下来
    目前的大趋势前后端分离,没觉得PHP能有什么不可替代性
    更多的是中小企业用PHP开发倒是简单快速
    稍大点求稳定的都用JAVA了
  • sdqu 15天前
    引用 9
    严重同意lz的这句话。
    但是,这句话在行业内却不受待见,因为装逼才是第一要务。
    所以找准一门语言,先学下去吧。一个开发留言板或博客的初级程序员,却喜欢去讨论高并发,语言高性能等等话题,是没有任何含义的。
  • openshit 15天前
    引用 10
    楼主想多了,只要拔线,啥都能替代
  • loveni 14天前
    引用 11
    还是学习前端有钱途
  • 师太 14天前
    引用 12
    过段时间  都是nodejs的天下了
  • 游客
    13
返回