Localizando a pasta de extensão PHP usando o bash


14

Estou tentando criar um script bash para instalar a extensão PHP do Source Guardian, mas o diretório de destino é diferente em todas as versões subseqüentes do Ubuntu.

A instalação do PHP5 no Ubuntu 14.04 resulta no armazenamento das extensões em / usr / lib / php5 / 20121212 + lfs /, no Ubuntu 15.04 esse diretório muda, por exemplo, / usr / lib / 20131226 /

Eu verifiquei /etc/php5/fpm/php.ini e /etc/php5/fpm/php-fpm.conf, mas nenhum desses arquivos tem qualquer menção a 20121212 + lfs ou 20131226.

Se eu colocar a extensão Source Guardian em outro lugar, ela não será carregada.

Existe uma maneira de determinar programaticamente a pasta de extensão?

Respostas:


22

Talvez você deva fazer isso:

php-config --extension-dir

Se php-confignão existir, apt-get install php-configse Ubuntu / Debian ou yum install php-configse CentOS / Red Hat)

Esse comando fornecerá a localização exata da sua phppasta de extensão.

Não se esqueça de alterar o seu php.inipara usar extensões.


Não é mais simples que analisar a php -isaída e requer uma instalação de software extra. Por quê?
Cprn 11/04/19

18

Você pode usar isso

php -i | grep extension_dir

2
Você também pode tentar, php -i | grep ^extension_dirpois também há um sqlite3.extension_dir. O acento circunflexo irá corresponder a partir do início da cadeia única (para aqueles que não sabem sobre regex) que ajuda se você estiver usando a saída de alguma forma
Stuart H

0

Você também pode encontrá-lo criando um script phpinfo (um arquivo que chama phpinfo();) e depois executá-lo no navegador.

Veja o exemplo abaixo.

insira a descrição da imagem aqui

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.