phpinfo () - gibt es eine einfache Möglichkeit, es zu sehen?

123

Jedes Mal, wenn ich das sehen möchte, muss phpinfo();ich:

  • Erstellen Sie eine info.php-Datei.
  • Schreiben phpinfo();Sie hinein.
  • Gehen Sie zum Browser und geben Sie mein "thisproject.dev/info.php" ein.

Ich bin auf Ubuntu.

Gibt es nicht eine praktischere Möglichkeit, phpinfo im Browser anzuzeigen?

MEM
quelle
2
Wie @Jaitsu und Brian Gordon geschrieben haben, können Sie über die Befehlszeile auf PHP zugreifen, aber was sie nicht erwähnt haben, ist, dass sich PHP in der Befehlszeile manchmal von einem in Apache unterscheidet, dh sie arbeiten in verschiedenen Modi und haben möglicherweise sogar unterschiedliche Konfigurationen Dateien.
binaryLV
@binaryLV guter Punkt, einer, den ich übersehen habe, als ich antwortete
JamesHalsall

Antworten:

219

Über Ihre Befehlszeile können Sie ausführen.

php -i

Ich weiß, dass es nicht das Browserfenster ist, aber Sie können den phpinfo();Inhalt nicht sehen, ohne den Funktionsaufruf auszuführen. Der beste Ansatz wäre natürlich, ein phpinfo-Skript im Stammverzeichnis Ihres Webserververzeichnisses zu haben, damit Sie jederzeit über http://localhost/info.phpoder ähnliches darauf zugreifen können (HINWEIS: Tun Sie dies nicht in einer Produktionsumgebung oder an einem anderen Ort ist öffentlich zugänglich)

BEARBEITEN: Wie von binaryLV erwähnt, ist es durchaus üblich, zwei Versionen einer php.ini pro Installation zu haben. Eine für die Befehlszeilenschnittstelle (CLI) und die andere für die Webserverschnittstelle. Wenn Sie die phpinfo-Ausgabe für Ihren Webserver anzeigen möchten, geben Sie den Pfad der INI-Datei an, z.

php -c /etc/php/apache2/php.ini -i 
JamesHalsall
quelle
10
Vergessen Sie nicht, es zu sichern , da die Ausgabe von phpinfo()nicht öffentlich zugänglich sein sollte.
binaryLV
Es gibt auch einen guten Grund, die 2 NICHT ZU VERBINDEN,php.ini insbesondere wenn Sie auf einem öffentlichen Server arbeiten.
JohnnyQ
Sie sollten wirklich nur das Flag -c verwenden und den Pfad für die richtige INI-Datei übergeben, anstatt etwas wie Symlinking oder so weiter zu tun.
Chris Rasys
@ChrisRasys Warum sollten Sie es jedes Mal angeben müssen, wenn Sie CLI-Skripte ausführen?
JamesHalsall
@JamesHalsall Wenn Sie die von Ihrem Webserver verwendeten PHP-Einstellungen emulieren müssen, ist dies der richtige Weg. Andernfalls verwenden Sie entweder fälschlicherweise die CLI-Einstellungen oder entfernen die Trennung zwischen CLI-Einstellungen und Webservereinstellungen. Diese Trennung besteht aus einem Grund.
Chris Rasys
18

Wenn Sie PHP auf Ihrem lokalen Computer installiert haben, versuchen Sie:

$ php -a
Interactive shell

php > phpinfo();
Brian Gordon
quelle
2
Bekommt dies die php.inider Cli-Version oder die in Apache? In meinem Fall benutze ich 2 php.inifür Cli und Apache.
JohnnyQ
2
Ich habe es versucht und es wird php.inivon der CLI-Version. Wenn Sie 2 Versionen behalten, ist php.inidies möglicherweise nicht anwendbar.
JohnnyQ
15

Über die CLI können Sie am besten Folgendes verwenden grep:

php -i | grep libxml
Totas
quelle
3
Dies ist eine schöne Möglichkeit, in der PHP-INI zu suchen.
claudiu.f.marginean
10

Von der CLI:

php -r 'phpinfo();'
sjas
quelle
Mein Webhost (Debian 7): php -r 'phpinfo ();' Fehler in Argument 1, Zeichen 2: Option nicht gefunden r php -v PHP 4.4.9 (cgi-fcgi) (erstellt: 28. Februar 2017 11:31:58)
Gefangener 13.
2

Verwenden Sie die Befehlszeile.

touch /var/www/project1/html/phpinfo.php && echo '<?php phpinfo(); ?>' >> /var/www/project1/html/phpinfo.php && firefox --url localhost/project1/phpinfo.php

Sowas in der Art? Idk!

Chris G.
quelle