alléger une installation php

Ça fait un moment que je me demande s’il existe un outil pour déterminer les extensions php nécessaires au bon fonctionnement d’un site… et bien sûr ça existe, mais j’ai mis un moment à le trouver: ça s’appelle PHP_Compatinfo alias PHPCI, c’est un « module » pear pas bien compliqué à installer, avec un utilitaire CLI, et ça sait parser du code php pour en extraire plein d’informations, dont la fameuse liste des extensions nécessaires… par exemple sur une installation drupal avec quelques modules, la commande:
phpci -dmemory_limit=512M --no-configuration print --reference PHP5 --recursive --report extension 9hz8o97./
me répond:

-------------------------------------------------------------------------------
PHP COMPAT INFO EXTENSION SUMMARY
-------------------------------------------------------------------------------
  EXTENSION                             EXT min/Max       PHP min/Max     COUNT
-------------------------------------------------------------------------------
  Core                                  4.0.0             4.0.0           34544
  PDO                                                     5.1.0              76
  Reflection                                              5.0.0               4
  SPL                                   5.1.0             5.0.0             247
  SimpleXML                                               5.0.1              17
  bcmath                                5.0.0             4.0.0               7
  bz2                                                     4.0.4               9
  ctype                                                   4.0.4               1
  curl                                                    4.0.2             193
  date                                                    4.0.0             335
  dom                                                     5.0.0               9
  filter                                0.11.0            4.0.0              11
  gd                                                      4.0.0             125
  gmp                                                     4.0.4               8
  hash                                  1.1               4.0.0              24
  iconv                                                   4.0.5               2
  json                                  5.3.0             5.2.0              17
  libxml                                5.2.11            5.0.0              37
  mbstring                                                4.0.6              13
  openssl                                                 4.0.4               1
  pcre                                                    4.0.0             459
C pdo                                                     4.0.0               2
  session                                                 4.0.0              43
  standard                              4.1.0             4.0.0           10080
C tidy                                                    4.0.0               1
  xml                                                     4.0.0              31
  zip                                   1.6.0             4.3.0               1
C zlib                                  1.0               4.0.0              27
-------------------------------------------------------------------------------
A TOTAL OF 28 EXTENSIONS WERE FOUND
WITH 3 EXCLUDED ON CONDITIONAL CODE
REQUIRED PHP 5.2.0 (MIN) 
-------------------------------------------------------------------------------

Bon, a part PDO il n’a pas deviné quelle BDD j’utilise, mais je pense pouvoir le deviner… sinon mes process httpd passent de 322M à 271M en RAM ? (et oui, ça baisserait aussi pour du php-fpm, mais il est pas encore arrivé là).

Il semble être capable de déterminer un tas de choses liées aux tests unitaires et à la couverture du code, aux modules PEAR, etc.

Share this post

Related post

  1. 2007.06.07

    Le format SVG
  2. 2007.07.04

    Tunnel ssh
  1. Cédric 2014.02.12 5:13pm

    Merci pour l’article, je savais que ça existait quelque part, mais il donne de quoi commencer, de quoi démontrer l’intérêt de l’outil sur mon propre code.