Blog

Trucs et astuces PHP (Admin sys)

Écrit le 29 12 2012 par Kévin MET _

Comment faire un phpinfo() en ligne de commande :

# php -i

Attention cependant car le fichier de configuration chargé est généralement différent de celui utilisé par apache ou php en fastcgi ou php-fpm. Exemple :


Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
Scan this dir for additional .ini files => /etc/php5/cli/conf.d
Additional .ini files parsed => /etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/mysqli.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini,
/etc/php5/cli/conf.d/suhosin.ini,
/etc/php5/cli/conf.d/xsl.ini
[...] Je vous coupe la fin car c'est long et inintéressant

Comment trouver le ./configure qui a été passé pour l'installation de PHP :

Alors évidémment cette information n'est intéressante que si php a été compilé manuellement. On commence par chercher le pid du process root d'apache :

Dans le cas d'un apache également compilé à la main :


# ps auxwww | grep httpd | grep root

root     19818  0.0  0.9 102656 10324 ?        Ss   May25   0:00 /opt/apache2.4.2-1/bin/httpd -k start
root     27273  0.0  0.0   6032   572 pts/0    R+   12:10   0:00 grep httpd

On cherche ou se trouve le libphp en faisant lsof sur le pid du process root d'apache :


# lsof -p 19818 | grep php

httpd   19818 root  mem    REG     3,1 23507212   83630 /opt/apache2.4.2-1/modules/libphp5.so

On va lire la lib avec strings :


# strings /opt/apache2.4.2-1/modules/libphp5.so | grep ./configure

Et ça va nous renvoyer le ./configure qui a été passé à l'installation de PHP. Cela peut être super pratique si on n'a plus le config.nice du dossier d'installation et que l'on veut faire une upgrade de PHP et conservant les même options de compilation.

Comment exécuter du code PHP en ligne de commande :


# php -r "phpinfo();"

Il suffit d'indiquer l'option -r. Mais attention à ce que vous voulez en faire car c'est le php.ini de php cli qui est chargé et il peut être différent de celui d'apache.

♥ Partage sur tes réseaux sociaux ♥
Kévin MET
Kévin MET

Auteur de ce blog et gérant de la société MNT-TECH, je publie sur ce blog lorsque le temps me le permet et lorsqu'un sujet qui me parait intéressant n'a pas encore été abordé en français. Toutes les informations techniques présentes sur cette page peuvent être réutilisées moyennant le fait de citer la source.