首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >了解PHP库安装

了解PHP库安装
EN

Stack Overflow用户
提问于 2010-12-10 02:47:52
回答 2查看 32.8K关注 0票数 19

我正在尝试理解与在系统(Linux/OSX)上“安装”PHP库相关的选项和术语

以下是我试图涵盖的一些具体问题:

  1. 当涉及到PHP libraries?
  2. What's时,“安装”是什么意思libraries?
  3. If库和
    1. 的区别是什么? php.ini是否适合?
    2. PEAR如何适合?
    3. 如何导入/包含PEAR我创建了自己的库,打包和分发它的最佳方式是什么?

谢谢--很抱歉说了这么多话...

EN

回答 2

Stack Overflow用户

发布于 2010-12-10 03:05:23

几点..。

PHP没有像python、java或.net那样的原生“导入”基础设施。在PHP中可以通过几种方式使用库。

PHP

  • 将它们编译成二进制文件。这是最高级的方式,除非你有非常特殊的需求,否则通常不太理想。
  1. 将它们作为模块安装在服务器上,并将它们包含在PHP.ini中。从PHP程序员的角度来看,这些扩展是PHP的一部分--总是可用的。添加和删除它们更容易,而不必在服务器上的某个地方重新构建PHP代码,并将其包含到itself.
  2. Install脚本中。
  3. 将库的副本保存到项目中,并将其包含在

脚本中。

--

在基本级别上,代码要么是解释器(静态或动态)的一部分,要么是包含在项目中的普通老式PHP代码。

出于您的目的,我只能建议您坚持使用行业标准的PHP发行版(选择一个好的linux操作系统,并使用它的PHP)。然后,你在解释器级别需要的几乎所有的库都可以作为附加包使用,而这项工作的复杂性则留给了那些每天都在做这件事的人。

在RedHat/Centos上,您可以运行:

yum install php php-memcached php-gd php-pecl

--

对于您可能想要使用的所有其他类型的库,最好的办法是采用一个好的PHP框架,它可以为您解决所有这些问题。

以下是一些示例:

  1. Zend Framework
  2. CakePHP
  3. Codeigniter
  4. http://www.phpframeworks.com/
  5. Etc...

(不是以任何顺序,只是想到的)

如果你已经采用了使用RPM或类似的标准方法来管理PHP和扩展方面的编译,那么一个好的可靠的框架将会照顾到你所需要的所有额外的PHP库代码。

最终的结果是,你专注于交付产品,而不是所有你必须学习和发明的基础设施。

--

php.ini在启动时被解析并运行(每次用于命令行,在apache中每个服务器启动一次)。它定义了很多设置,包括很多模块,配置这些模块,等等。

实际上,您可以使用PHP中的ini_set()函数覆盖php.ini中的某些设置。但是,这只对某些设置有效。其他的需要在你的脚本开始之前设置。

在apache下运行时,您可以在.htaccess<VirtualHost>指令中添加代码行,以完全覆盖该目录/虚拟主机的PHP.ini。

(请更正我的语法,如果错误,请删除此注释)

代码语言:javascript
复制
<VirtualHost *>
    ServerName www.example.com       
    DocumentRoot /home/joe/site/docroot
    php_value include_path "/home/joe/site/php-code"
</VirtualHost>

--

为了回答你关于你自己的库和打包它的最佳方式的#6问题,我建议你首先评估库的需求。如果你真的在做某件事,那就找出人们最常见的做法。如果它是一个简单的库,那么一个带有漂亮网站的.php文件就足够了。

--

也许有点漫无边际,但我希望这能给你指明正确的方向。

票数 15
EN

Stack Overflow用户

发布于 2010-12-10 02:54:20

所有这些都与PHP直接相关:

  1. 通常只是复制并确保想要使用它的东西知道它在哪里。
  2. 扩展通常是用C语言编写的,由解释器加载,而库通常意味着本机PHP库。
  3. 不知道,你想在这里知道什么。ini加载扩展并设置一些设置。它与安装没有直接关联,....你可以在这里设置你的包含路径(或其他东西)。
  4. 你可以用它安装库;)也不知道你想知道什么。
  5. 通常是require(_once)include(_once)。对于类,你可以设置一个自动加载器。请参阅PHP ( manual.
  6. package/Archive,gz,tarball,..)并制作一个下载链接?还有:不知道你想要什么。

如果您想要编写PHP库,并且想要一种简单的打包和分发方法,那么可以看看PEAR。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4401907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档