Como vejo as extensões carregadas pelo PHP?

155

Deve estar em algum lugar no dump phpinfo (), mas eu simplesmente não sei onde. Ele deveria estar na seção "Módulos adicionais"? Em outro lugar? Estou tentando descobrir por que algumas extensões não parecem carregadas, mas nem sei para onde devo procurar.

Bialecki
fonte

Respostas:

237

Corrida

php -m
lhe dará todos os módulos e
php -i
fornecerá informações muito mais detalhadas sobre a configuração atual.

Abdullah Jibaly
fonte
60

Comando de execução. Você obterá extensões instaladas:

php -r "print_r(get_loaded_extensions());"

Ou execute este comando para obter toda a instalação e desinstalação do módulo com a versão

dpkg -l | grep php5
Saurabh Chandra Patel
fonte
37

use a get_loaded_extensions()função PHP

Troelskn
fonte
7
Isso funciona na linha de comando php -r 'print_r(get_loaded_extensions());'que produz a mesma listaphp -m
phpguru
1
cmd para módulos de exportação com números de versão:php -r "phpinfo(INFO_MODULES);" | grep -B 3 -i version > modules.txt
Agnius Vasiliauskas
33

Você quer executar:

 php -m 

na linha de comando

ou se você tiver acesso ao arquivo de configuração do servidor aberto

/etc/php5/apache2/php.ini

e veja todas as extensões,

você pode até ativá-los ou desativá-los alternando entre Ativado e Desativado dessa maneira

<Extension_name> = <[On | Off]>
william.eyidi
fonte
17
  <?php 
      echo "<pre>";
      print_r(get_loaded_extensions());
      echo "<pre/>";
 ?>
Rahul Yadav
fonte
a lista do php -m é muito maior que a get_loaded_extensions () que não lista curl, mbstring e muitos outros? por que é que? Eu instalei curl, mbstring, mas eles não parecem aparecer no script php?
Meryan
Como classificar get_loaded_extensions () em ordem alfabética? para comparar com outras instalações de php em funcionamento, obrigado.
Meryan
6

get_loaded_extensions() saída da lista de extensões.

phpinfo(INFO_MODULES); produzir as extensões e seus detalhes.

jayxhj
fonte
5

Se você deseja testar se uma extensão específica está carregada, também pode usar a extension_loadedfunção, consulte a documentação aqui

php -r "var_dump(extension_loaded('json'));"
PeterPan666
fonte
1

Você está procurando uma extensão específica? No seu phpinfo();, basta pressionar Ctrl+ Fno seu navegador da web, digite as primeiras 3-4 letras da extensão que você está procurando e deve mostrar se está carregado ou não.

Normalmente, phpinfo()ele não mostra todas as extensões carregadas em um local, ele possui uma seção separada para cada extensão carregada, onde mostra todas as suas variáveis, caminhos de arquivos, etc. provavelmente significa que não está carregado.

Como alternativa, você pode abrir seu arquivo php.ini e usar o método Ctrl+ Fpara encontrar sua extensão, e ver se ela foi comentada (geralmente por um ponto e vírgula perto do início da linha).

Click Voto a favor
fonte
0

Você perguntou onde você vê as extensões carregadas na saída phpinfo ().

Responda:

Eles são listados na parte inferior como seções / tabelas separadas e SOMENTE se forem carregados. Aqui está um exemplo de extensão Curl carregado.

insira a descrição da imagem aqui ...

... insira a descrição da imagem aqui

Eu o instalei no Linux Debian com

sudo apt-get install php7.4-curl
Meryan
fonte