Maison  >  Article  >  développement back-end  >  PHP 为什么没有取代 Python ?

PHP 为什么没有取代 Python ?

WBOY
WBOYoriginal
2016-07-20 12:01:311065parcourir

PHP 同样可以 cli 模式运行,同样也有很多库和扩展,Web 开发不在话下,结合 gtk 等库也可以开发桌面应用程序,为什么没有取代 Python 呢,他们语法同样追求的是简单和快速上手,用开发效率换运行效率,很多地方都很相似,而且现在各种培训机构教 PHP 的也比 Python 要多,总感觉 PHP 使用人群也比 Python 多很多。

回复内容:

我看不出来它们有多么相似。

PHP 弱类型;Python 强类型。

PHP 主 Web;Python 主通用。

PHP 早期命名混乱、特性支持不全(Unicode、namespace);Python 比它好多了。

PHP 扩展集中在 Web 开发。有爬虫么?有科学计算么?有大数据么?连进程控制都做不好。

PHP 语法越来越复杂了(跟 C++ 一样不断地加特性);Python 相对干净不少。

PHP 连个像样的交互式 shell 都没有(我找到一个,是用 Python 写的);Python 不仅原生就支持交互式 shell,还有 ipython、bpython、ptpython 等各种好用的东西,还有以数据分析为主的 notebook。

PHP 之前连 SQL 转义都搞不定的吧?Python 我刚认识的时候已经是 DB API 2.0 了,正确使用,完全不用担心 SQL 注入。

PHP 入目一堆美元;Python 更像普通的文本。

.......

PS: 为什么只说 PHP 的缺点、Python 的优势?因为我回答的是「PHP 为什么没有取代 Python」,不是「Python 为什么没有取代 PHP」! php从没想过要取代python,如果有人这么咋呼,多半是培训机构肆意夸大php来忽悠你的呢!

我以前也试图用php来解决一切问题,比如写daemon、打包桌面软件、写cli工具等等,后来证明都是徒劳的,php根本不适合做这些,不是不能做,都是图灵等价语言,但其他语言可以做的更好。

用php写daemon,很容易碰到CPU会飙到100%的情况,后面我也碰到有人用php写的daemon也飙到100%,还把自己吓一跳的人。可能引发的原因是未加超时设置(stream_set_timeout)、未及时销毁不断膨胀的变量、每次打开新数据库连接而不关闭等等引起的。

后来我再也没有用php来写daemon,因为php的脚本特性就是每次请求完成后自动释放所有资源,所以写的时候不会去考虑资源释放、超时等问题,习惯了这样的方式,根本不能用来写daemon,也不适合来写桌面软件,严格来说这不是php本身的问题,但php把你惯坏了,滥用资源而不释放。

另外纠结一下 php 是有丑陋的shell的,php -a ,只不过每次都要 echo 一下才能出来,也能直接运行php代码,比如:php -r 'echo time(); ',-r 表示run,代码部分无需加入虽然 Python 挺烂的
但是要烂到被 PHP 取代 Guido 还是去卧轨吧 我想说:你是不是傻。。。 邀请我干嘛,我不会PHP

我对于PHP唯一的了解是那句“最好的语言”,但是Python我却听到大多数是关于“适合新手”、“适合数学研究”等,首先名声就上去了。

另外pip那么多内裤你PHP上哪找去 php主力在web,大部分web网站都是php的。
Python主力在命令行,所以你可以看到很多运维工具是Python写的。世界上的东西并不是互相替代的,互相竞争的,各种语言都有他们自己的优势以及不可替代的价值,php和JAVA都能一起组合开发企业级项目,那么又有什么理由排斥命令行那么溜的Python呢?合适的才是最好的。 好比问who取代mall一样。
不是谁取代谁,而是各有生存空间。
php曾经一度被认为是夕阳语言,后来流行起来各种框架,使开发一个产品的技术要求越来越低。
就社区活跃度来说,两者没有明显的强弱。 手枪为什么没有取代步枪
因为作用不一样 场景不一致
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn