我总是收到关于幕后工作原理的奇怪问题。我知道如何从源代码编译 php,并且我知道如果您从源代码编译它而忘记添加模块/库,则需要重新编译 php 以添加它。但是,如果您使用 yum 安装 php,然后您想添加另一个扩展,您只需要安装该扩展。例如,今天我在一台最近安装的 Fedora 18 机器上工作,而 php 缺少 DOM 库,这很奇怪,因为默认情况下启用了该库。似乎 yum 安装了禁用该扩展的 php。无论如何,由于它丢失了,我不得不这样做:
sudo yum install php-xml
这解决了问题,但它让我想知道,这种情况下的安装过程如何?php重新编译了吗?如果是这样,它如何记住之前可能添加的所有其他扩展?或者是单独安装了xml扩展并以某种方式链接到php?
我还没有找到任何有关此的信息,我真的很好奇它是如何工作的。