PEAR在现实世界中有多常见?

时间:2009-04-10 00:52:16

标签: php frameworks pear

我已经查看了很多其他人的源代码和其他开源PHP软件,但在我看来,几乎没有人真正使用PEAR。

PEAR在现实世界中的使用有多常见?

我在想,也许目前对框架的感觉可能会影响其受欢迎程度。

7 个答案:

答案 0 :(得分:10)

PHP程序员文化似乎有一种猖獗的“未发明在这里”综合症的感染,每个人似乎都希望自己重新发明轮子。

不是说这适用于所有 PHP程序员,但他们这样做显然太正常了。

我认为很多时候由于缺乏教育,加上托管服务提供商提供体面的PHP服务的困难。

这使得可行的PEAR安装变得更加困难,并且由于PHP的设计结构不利于模块化设计而使其恶化。

(这可以通过添加名称空间来改进,但还没有看到)。

我在野外看到的绝大多数PHP代码仍然是使用HTML插入的经典业余代码,而且PHP用户不可避免地注册的大多数廉价主机并不能为您提供shell访问权限。

答案 1 :(得分:6)

在我(有限)的经历中,每个可能有趣的PEAR项目都有重点反对它:

  • 代码面向最广泛的受众群体。整个地方都有黑客可以处理旧的/不支持的PHP版本。如果无法在旧版本上模拟它们,则会忽略新的有用功能,这意味着您最终落后于核心语言开发。
  • 任何给定的项目都会增长,直到用一个简单的include解决每个人的问题。当您的PHP解释器必须在每个页面命中处理所有源代码时(因为作者可能没有将其设计为对操作码缓存友好),处理数千个未使用的代码行会产生可测量的开销。
  • 风格始终不一致。我从来没有觉得像其他语言一样学习泛化的API。

我以前在工作中使用PEAR::DB。我们发现大多数脚本都花在PEAR代码中而不是我们自己的代码中。由于使用了 real 预处理语句,使用pgsql_*函数的非常简单的包装替换它可以显着减少执行时间并提高运行时安全性。 PEAR::DB使用了自己的(当时不正确)Postgres的预处理语句逻辑,因为本地pgsql_函数太新了,无法在任何地方使用。

总的来说,在许多情况下,我觉得PEAR很适合作为“入门图书馆”。它可能是比任何个人在短时间内产生的更高质量的代码。但我肯定不会在一个受欢迎的面向公众的网站上使用它(至少,不是没有经过大量的手工调整......维护我自己的分叉)。

答案 2 :(得分:3)

我的观点我认为PEAR是一个很好的项目,但缺乏想要工作的人并且保持工作,大多数软件包都有不一致的编码实践(我不是指编码风格)而且有整个事情都有很多TODO。

我发现它有时用于编码我还不知道的东西,比如自定义国家验证函数等等,否则我会更好地使用任何可用的框架(比如CodeIgnite或Zend Framework)。

答案 3 :(得分:0)

Pear图书馆就是那种只是坐在那里的东西,插上去,带着很少的荣耀。如果您正在寻找它可以做的事情,并且您正在使用的框架中没有更具体的目标 - 去使用它。

过去两年我一直在约会网站上工作 - 至少有65个我使用的梨源文件,现在仍然在那里。有些内容,比如寻呼机或html_Quickform会被更新后的新代码所取代,但对于其他代码则没有必要。

答案 4 :(得分:0)

梨花不常见,也不流行。

答案 5 :(得分:0)

我尝试过多次使用PEAR,但它没有提交umpphh。

我更喜欢Zend Framework,它采用“松散”类型的方法,只使用你想要的东西。

答案 6 :(得分:0)

PEAR不常见,也不流行 - 但它 好,我推荐给任何人。

(我同意Tom的意见,因为它感觉不像一个单一的,统一的API;但是,这就是PHP ...人们不希望看到它作为一个解释的 hack超越它的工作站语言现在可以吗?!)