Heim  >  Artikel  >  Backend-Entwicklung  >  PHP 为什么没有取代 Python ?

PHP 为什么没有取代 Python ?

WBOY
WBOYOriginal
2016-07-20 12:01:311016Durchsuche

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曾经一度被认为是夕阳语言,后来流行起来各种框架,使开发一个产品的技术要求越来越低。
就社区活跃度来说,两者没有明显的强弱。 手枪为什么没有取代步枪
因为作用不一样 场景不一致
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn