网站首页 语言 会计 互联网计算机 医学 学历 职场 文艺体育 范文
当前位置:学识谷 > 计算机 > php语言

PHP的缺点

栏目: php语言 / 发布于: / 人气:2.12W

PHP的含义是“个人主页”。PHP在1995年由Rasms Lerdorf发布初始版本,着眼于支持小型,简单的动态网络应用,例如在网络早期受欢迎的留言板和计数器。下面小编为大家介绍PHP的缺点吧!

PHP的缺点

1. 未知类型转换

程序员每天都在比较编程语言,例如整数和浮点数与> =运算符; heck,甚至C都是允许。其意图是完全清楚的。不太清楚的是使用==比较字符串和整数意味着什么,不同的语言做出了不同的选择。 PHP在这个部分的选择是特别不恰当的,这导致了异常和未检测到的错误。例如,123 ==“123foo”求值为true,但0123 ==“0123foo”是false(hmm)。

2.值语义,引用的不一致。

PHP 有一个明确的语义--赋值,参数传递和返回都是通过值来传递。程序员可以选择参考语义与注释。这将与PHP 4和5中引入了面向对象的编程程序冲突。 PHP的面向对象符号大部分是从Java借鉴的,Java具有通过引用处理对象的.语义,而基本类型由值来处理。所以PHP的语义的当前状态是对象通过引用传递,基本类型通过值传递,但是旧的引用语义和&表示法依然保留,有时候与新的方式对接会出现未知的现象。

3.哲学。

PHP进行了非常多的尝试来满足运行需求,它甚至做了一些很奇特的事情。例如,除以0不会抛出异常,或返回INF值,或终止请求。默认情况下。它警告并赋值为false。由于false在数值上默认值0,所以许多应用程序在部署和运行中没有检测到除以0的错误。这个特殊的问题在PHP 7中改变了,但是设计的动力是不断的发展,在过去它可能有意义的,也遍及很多的库中。

4.标准库中不一致。

在PHP发展初期,其受众者大都熟悉C语言,许多API使用C标准库的设计语言:六个字符的小写名称,成功和失败返回一个整数返回值,返回值为“实数“,返回值由调用者out参数返回等等。随着PHP成熟,通过前缀_命名空间的C风格变得更加普遍:mysql_ ...,json_ ...等等。最近,Java风格的CamelCase类的camelCase方法的已经成为最多的常见的引入新函数的方式。因此,有时我们看到的代码片断交错表达式像新DirectoryIterator($路径)与if(!($f = fopen($ p,'w +'))...一个全新的方式。

使用了PHP的这些项目的成功,主要归功于 PHP环境的特性,以及其带来的高节奏的工作流。而环境的优势所带来的价值要比由语言缺陷所造成的问题更加重要。还有一点在 MPDPL 当中比较独特的就是, 以 Hack 和 HHVM 的形式向更高的性能,更安全和更高的可维护性这些方面的迁移,途径是明确的。Slack 目前正处在向 HHVM 过渡的后期阶段,以及向 Hack 过渡的早期阶段,而我们也乐观地认为它们将会让我们的更加快速的产出更好的软件

Tags:PHP