2013-02-08 4 views
11

Grundsätzlich bin ich neu in PHP, und ich habe gerade PHP auf meinem Rechner installiert. so können wir gesamte Information der PHP-Konfiguration kennen durch eine PHP-Datei erstellen und den folgenden Code zu schreiben darinWie finde ich die Versionsnummern der eingebauten Module in PHP aus dem CLI

<?php 
    phpinfo(); 
?> 

und ich öffnete diese durch Browser und in der Lage kann alle Konfigurationsdaten

sehen Aber gibt es eine Möglichkeit, die Version der PHP-Standard-Module von Linux-Terminal zu wissen (Ich verwende übrigens Fedora :))

Also was ich alles fragen will ist, ob es eine Möglichkeit gibt, die Versionsnummer zu finden Alle Module oder einzelne Module vom Terminal über einige PHP com Mands?

Zum Beispiel gibt es einen Befehl php -me die alle PHP-Module zeigt, die standardmäßig kommt, wenn php wie installiert ist unter

[PHP modules] 
mysql 
mysqli 
openssl 
pcntl 
pcre 
PDO 
pdo_mysql 
pdo_sqlite 
Phar 
readline 
Reflection 
session 
shmop 
.... 
..... 

aber in der gleichen Art und Weise möchte ich die Versionsnummer des einzelnen Moduls finden Auch vom Terminal aus, wie können wir es finden?

+1

Sie können phpinfo vom Terminal mit 'php -i' nennen und die Info analysieren, die Sie benötigen. –

+0

Und sammeln Sie die meisten davon mit etwas wie $ php -i | grep -C4 -i Version –

+0

wow das ist erstaunlich, ich kann einige Ausgabe sehen, auf die ich warte, wenn ich oben Befehl verwendet, aber tut mir leid, ich bin neu, diese zu verwenden und kannst du mich bitte wissen lassen, wie man eine einzelne Modulversion zu einer Zeit wie openssl vom Befehl findet (:) :), weil ich einige Funktionen machen musste, indem ich die Versionsnummer des einzelnen Moduls fand) –

Antwort

15

Dies sollte den Trick:

php -r 'foreach (get_loaded_extensions() as $extension) echo "$extension: " . phpversion($extension) . "\n";' 

lesbarer Version (für Code-Nutzung):

$extensions = get_loaded_extensions(); 
foreach ($extensions as $extension) { 
    echo "$extension: " . phpversion($extension) . "\n"; 
} 
+0

Das OP will das vom CLI, also wickle es in einen Aufruf von' php -r' –

+4

Hier werde ich TU es für dich. 'php -r 'foreach (get_loaded_extensions() als $ Erweiterung) echo" $ extension: ". phpversion ($ Erweiterung). "\ n"; " –

+0

Wenn Sie es in einer PHP-Seite verwenden, können Sie"
"' anstelle von '" \ n "' – godzillante

17

Um die Version für ein bestimmtes Modul zu sehen, können Sie php -ri <module> | grep Version verwenden.

Zum Beispiel:

php --ri mongo | grep Version

Returns:

Version => 1.6.5 
+1

bequemer. – JohnnyQ

+1

der richtige Ansatz – Shapeshifter

Verwandte Themen