This package is a meta-package that, when installed, guarantees that you have at least one of the four server-side versions of the PHP5 interpreter installed. Removing this package won't remove PHP5 from your system, however it may remove other packages that depend on this one.
Extension optimizing the ADOdb database abstraction library.
A PHP5 extension for PAM authentication.
Command-line interpreter for the php5 scripting language. This package provides the /usr/bin/php5 command interpreter, useful for testing PHP scripts from a shell, or perhaps even performing general shell scripting tasks, if you're frightened of perl and python.
Server-side, HTML-embedded scripting language (CGI binary).
Common Gateway Interface. One drawback of cgi is that since no php process/interpreter is actually persistent, its not possible to use an opcode cache like APC. Also, Cgi creates a php process only upon request, and closes them after the request is process. So there is an overhead to start a new php process on every request. This is overcome in fastcgi, where the php process is kept persistent to be reused.
And phpinfo() will report the Server API as CGI/FastCGI. This is because the php-cgi binary is being used to execute the php code.
FastCGI is like cgi but can keep multiple processes alive and reuse them. This is an enhancement to cgi.
Since fastcgi keeps processes alive, it consumes more resources in idle state compared to cgi. However fastcgi reuses php processes so is more efficient that cgi when it comes to processing concurrent resources.
It is well understood that when using php + fastcgi, fastcgi will create and manage multiple php processes and reuse them efficiently. However there is a lesser understood fact that the php process created by fastcgi is itself capable of create further child php processes and managing them.
So if fastcgi created 10 php processes, then each of these 10 processes can create 4 child php processes each, giving us a total of 10 + 10*4 = 50 processes.
So process management can happen at 2 levels. 1st at fastcgi, 2nd inside php.
Common files for packages built from the PHP5 source.
CURL module for PHP5.
Debug symbols for PHP5.
Files for PHP5 module development.
Php-FPM is the new style of running php with fastcgi. FPM stands of fastcgi process manager and it is a separate process manager for managing multiple php processes and reusing them.
Php fpm is a process manager that is implemented inside php itself.
Php-fpm supports running different vhosts with different uids. But setting this up requires some configuration.
Php-fpm manages a pool of php processes to serve requests. Now, it can manage multiple separate pools each running with a different uid/gid. Multiple pools can be created by creating fpm configuration files.
Each pool will have a separate socket (mapped to a unix file).
Setting this up will require quite some effort when running multiple sites/vhosts on a server.
Moreover having multiple pools of php processes will significantly increase the resource usage, especially RAM. If one pool has 5 process anytime, and each taking around 4M, the total is minimum 20MB in 1 pool.
If there are 5 such pools it would require 100MB in its idle state and more when traffic rises on any single website. So consider this carefully when setting up multiple pools of fpm.
GD module for PHP5.
GMP module for PHP5.
LDAP module for PHP5.
ODBC module for PHP5.
PostgreSQL module for PHP5.
MySQL module for PHP5.
pspell module for PHP5.
Recode module for PHP5.
SNMP module for PHP5.
SQLite module for PHP5.
tidy module for PHP5.
XML-RPC module for PHP5.
XSL module for PHP5.