有时,在安装PHP之前,很难知道您需要哪些PHP扩展。如果您以后需要添加扩展名,则可能会很幸运,并且扩展程序可能位于所使用的操作系统的存储库中。这可能只是一个简单的sudo apt-get安装php5-intl。但是,在其他情况下,您可能需要从Source安装它 - Phalcon就是一种情况,但是通过引入供应商支持,快捷方式和预编写的说明,该过程使您的操作系统非常简单。但是,如果其他扩展程序没有这样的东西?
> 在本教程中,我们将在Linux Systems上安装一些自定义扩展(OS X - 过程几乎相同)。该过程与我们已经在Nitrous.io上所做的非常相似,但适用于本地环境 - 更具体地说,是Laravel Homestead。您可以轻松地从本教程得出安装说明,并将其应用于其他发行版。钥匙要点
>这很好,这是因为默认安装的文件夹实际上还不包含任何文件。现在,vagrant ssh进入VM,并执行以下命令:
>
这将在默认设置为homestead的路径中创建一个有效的PHP信息文件。刷新URL现在将产生一个phpinfo屏幕:
<span>cd Code </span><span>git clone https://github.com/Swader/publicinfo</span>
准备环境
>要从源构建扩展,我们需要安装在计算机上的PHP开发工具,以及可以生成扩展文件的编译器。以下是您在各种操作系统上安装这些先决条件的方式:
<span>cd Code </span><span>git clone https://github.com/Swader/publicinfo</span>
<span>sudo apt-get install php5-dev php5-mysql gcc libpcre3-dev</span>
<span>sudo yum install php-devel php-mysqlnd gcc libtool</span>
<span>sudo yum install php-devel php-mysql gcc libtool</span>
如果您使用的是最新的宅基地,则所有这些工具都将为您安装。准备所有准备的东西,让我们开始安装扩展名。
>您可以安装两种类型的扩展:与PHP捆绑但默认未安装,第三方扩展。诸如Phalcon之类的第三方扩展通常通过提供快捷方式使安装过程变得更加容易,因为它们不必遵守某些传统捆绑的PHP扩展。
首先,让我们进入VM上的主文件夹:CD〜。在那里,制作下载文件夹,然后将CD添加到其中。安装捆绑的扩展程序时,您需要在计算机上使用PHP的源代码,最好是与当前版本相匹配。 Homestead版本的使用率为5.5.12,所以我将下载一个:>我正在使用上面的比利时镜子,随意使用下载档案中的一个或任何其他镜子。
<span>yast2 -i php5-pear php5-devel php5-mysql gcc</span>
>要查看所有捆绑扩展的源,请进入未架构的PHP源代码文件夹中的EXT文件夹,并使用LS。
安装捆绑的扩展
在其他分布下,安装说明可能会有所不同。最好是参考ICU网站或此步骤的个人发行文档。
<span>wget http://be2.php.net/distributions/php-5.5.12.tar.bz2 </span><span>tar xvjf php-5.5.12.tar.bz2 </span><span>cd php-5.5.12</span>
让我们解释一下发生的事情。
>启用和测试
<span>cd Code </span><span>git clone https://github.com/Swader/publicinfo</span>
查看我们的php扩展文件夹中是否确实在列出的。
如您所见,在那里,它们在鲜绿色中突出显示。
<span>cd Code </span><span>git clone https://github.com/Swader/publicinfo</span>
此文件夹是所有此类INI文件的存储库。在此处创建两个新文件:
<span>sudo apt-get install php5-dev php5-mysql gcc libpcre3-dev</span>
这些命令创建了两个新的INI文件,每个文件都用于我们以前构建的扩展之一。由于它们现在在mods-ovabable文件夹中,我们可以使用已经可用的php5enmod(hart for php enable mod)命令行工具。
<span>sudo yum install php-devel php-mysqlnd gcc libtool</span>>注意:如果您没有PHP5ENMOD工具,则将INI文件链接到各种PHP Runtimes的Conf.d文件夹中,将有能力:
有四个条目的原因是我们具有PHP的命令行版本和PHP的FPM版本。每个人都使用自己的php.ini文件,每个文件都会加载自己的conf.d文件夹以进行扩展 - 因此,如果我们希望全方位的扩展名可用。仅当您没有php5enmod工具时,才使用此方法。
<span>sudo yum install php-devel php-mysql gcc libtool</span>>
最后,让我们重新启动nginx和php-fpm加载这些更改。
查看我们是否已安装了它们,请从之前刷新Phpinfo屏幕并分别搜索Mongo和Intl。
><span>yast2 -i php5-pear php5-devel php5-mysql gcc</span>
成功!
要删除扩展,除非您在空间上确实很低,否则无需删除任何实际文件。您可以通过三种方式进行:
>手动删除符号链接。例如。 sudo rm /etc/php5/cli/conf.d/mongo.ini
请在下面留下您的反馈,让我知道您是否对特定的扩展程序感到困惑,并希望帮助安装它。
>
>>我可以在Windows系统上安装PHP扩展吗?但是,与Unix样系统相比,该过程略有不同。您通常会下载预编译的DLL文件并将其添加到PHP安装中,而不是从源中编译扩展名。 php.net网站提供了有关如何执行此操作的详细说明。
>卸载PHP扩展程序涉及从php.ini文件中删除扩展名的配置,然后重新启动Web服务器。如果将扩展名安装为共享模块,则您也可能需要删除模块的.so或.dll文件。
>
>我可以安装php扩展程序而无需root访问吗?是的,可以安装无根访问的PHP扩展。这可以通过在主目录中安装PHP然后在此处安装扩展名来完成。但是,这种方法需要更多的技术知识,并且可能不适合所有用户。>
有哪些常见的PHP扩展名?它们做了什么?>
有许多可用的PHP扩展名PHP语言的其他功能。一些常见的扩展名包括用于与MySQL数据库进行交互的mysqli,用于创建和操纵图像文件的GD以及用于制作HTTP请求的卷曲。>以上是如何从源安装PHP扩展的详细内容。更多信息请关注PHP中文网其他相关文章!