Wie sehe ich die von PHP geladenen Erweiterungen?


155

Es muss irgendwo im phpinfo () Dump sein, aber ich weiß einfach nicht wo. Soll es sich im Abschnitt "Zusätzliche Module" befinden? Irgendwo anders? Ich versuche herauszufinden, warum einige Erweiterungen nicht geladen zu sein scheinen, aber ich weiß nicht einmal, wo ich suchen soll.

Antworten:


237

Laufen

PHP-m
erhalten Sie alle Module, und
php -i
Hier erhalten Sie viel detailliertere Informationen zur aktuellen Konfiguration.


60

Führen Sie den Befehl aus. Sie erhalten installierte Erweiterungen:

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

Oder führen Sie diesen Befehl aus, um alle Module mit der Version zu installieren und zu deinstallieren

dpkg -l | grep php5


33

Sie möchten ausführen:

 php -m 

in der Kommandozeile,

oder wenn Sie Zugriff auf die geöffnete Serverkonfigurationsdatei haben

/etc/php5/apache2/php.ini

und schauen Sie sich alle Erweiterungen an,

Sie können sie sogar aktivieren oder deaktivieren, indem Sie wie folgt zwischen Ein und Aus wechseln

<Extension_name> = <[On | Off]>

17
  <?php 
      echo "<pre>";
      print_r(get_loaded_extensions());
      echo "<pre/>";
 ?>

die liste von php -m ist viel länger als get_loaded_extensions (), in der curl, mbstring und viele andere nicht aufgelistet sind? warum ist das so? Ich habe curl, mbstring installiert, aber sie scheinen nicht aus dem PHP-Skript zu zeigen?
Meryan

Wie sortiere ich get_loaded_extensions () alphabetisch? danke, um mit anderen funktionierenden PHP-Installationen zu vergleichen.
Meryan

6

get_loaded_extensions() Geben Sie die Erweiterungsliste aus.

phpinfo(INFO_MODULES); Geben Sie die Erweiterungen und ihre Details aus.


5

Wenn Sie testen möchten, ob eine bestimmte Erweiterung geladen ist, können Sie die extension_loadedFunktion auch verwenden , siehe Dokumentation hier

php -r "var_dump(extension_loaded('json'));"

1

Suchen Sie eine bestimmte Erweiterung? Drücken Sie in Ihrem phpinfo();einfach auf Ctrl+ Fin Ihrem Webbrowser, geben Sie die ersten 3-4 Buchstaben der gesuchten Erweiterung ein und es sollte Ihnen zeigen, ob sie geladen ist oder nicht.

Normalerweise in phpinfo() darin nicht alle geladenen Erweiterungen an einem Speicherort angezeigt. Für jede geladene Erweiterung gibt es einen separaten Abschnitt, in dem alle Variablen, Dateipfade usw. angezeigt werden. Wenn also kein Abschnitt für Ihren Erweiterungsnamen vorhanden ist bedeutet wahrscheinlich, dass es nicht geladen ist.

Alternativ können Sie Ihre Datei php.ini öffnen und die Ctrl+ F-Methode verwenden, um Ihre Erweiterung zu finden und festzustellen, ob sie auskommentiert wurde (normalerweise durch ein Semikolon am Zeilenanfang).


0

Sie haben gefragt, wo Sie geladene Erweiterungen in der Ausgabe von phpinfo () sehen.

Antworten:

Sie werden unten als separate Abschnitte / Tabellen aufgeführt und NUR, wenn sie geladen sind. Hier ist ein Beispiel für die geladene Erweiterung Curl.

Geben Sie hier die Bildbeschreibung ein ...

... Geben Sie hier die Bildbeschreibung ein

Ich habe es unter Linux Debian mit installiert

sudo apt-get install php7.4-curl
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.