请多多包涵。 我觉得我的问题太愚蠢了,可能是我在网上找不到答案的原因。
我需要使用一个名为mcrypt_encrypt()的PHP函数。 所以我看看php.ini来激活mcrypt扩展,search:
;extension=php_mcrypt.dll
但是在我的php.ini中没有关于mcrypt的信息…所以我使用yum来安装扩展:
yum install php-mcrypt
一切正常!
但是,回头看看php.ini文件,我希望find一条关于mcrypt扩展被激活的线。 没有。
我想我的问题是更多关于如何百胜的工作:如何可以安装和激活一个PHP扩展没有修改php.ini文件?
它不需要修改php.ini来激活这个扩展。
看看你的默认php.ini,应该有这样的评论:
;;;; ; Note: packaged extension modules are now loaded via the .ini files ; found in the directory /etc/php.d; these are loaded by default. ;;;;
而这正是发生的事情。
通过安装该扩展,软件包将文件放置在/etc/php.d/中,然后默认加载。
在你的情况下,可能会有一个名为/etc/php.d/mcrypt.ini的文件,其中包含:
; Enable mcrypt extension module extension=mcrypt.so
请查阅关于在rpm包中声明的文件的%config指令的文档。
%config指令用于将指定的文件标记为configuration文件。 RPM在擦除软件包时以及安装和升级期间对configuration文件执行附加处理。 这是由于configuration文件的性质:它们经常被系统pipe理员改变,并且这些改变不应该丢失。
并且列出php-config rpm包的configuration文件显示确实,/ /etc/php.ini 是一个configuration文件,所以遵守%config directive 。
rpm -qc php-common |grep php.ini /etc/php.ini
因此,yum通常不会编辑文件。 此外,该软件包由另一个软件包(php-common)拥有。