<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />-->
<?
php
function is_cli()
{
return ! isset ( $_SERVER [ ' HTTP_HOST ' ]);
}
/* *
* Checks a configuration.
*/
function check( $boolean , $message , $help = '' , $fatal = false )
{
echo $boolean ? " OK " : sprintf ( " [[%s]] " , $fatal ? ' ERROR ' : ' WARNING ' );
echo sprintf ( " $message %s\n " , $boolean ? '' : ' : FAILED ' );
if ( ! $boolean )
{
echo " *** $help ***\n " ;
if ( $fatal )
{
die ( " You must fix this problem before resuming the check.\n " );
}
}
}
/* *
* Gets the php.ini path used by the current PHP interpretor.
*
* @return string the php.ini path
*/
function get_ini_path()
{
if ( $path = get_cfg_var ( ' cfg_file_path ' ))
{
return $path ;
}
return ' WARNING: not using a php.ini file ' ;
}
if ( ! is_cli())
{
echo ' <html><body><pre> ' ;
}
echo " ********************************\n " ;
echo " * *\n " ;
echo " * symfony requirements check *\n " ;
echo " * *\n " ;
echo " ********************************\n\n " ;
echo sprintf ( " php.ini used by PHP: %s\n\n " , get_ini_path());
if (is_cli())
{
echo " ** WARNING **\n " ;
echo " * The PHP CLI can use a different php.ini file\n " ;
echo " * than the one used with your web server.\n " ;
if ( ' \\ ' == DIRECTORY_SEPARATOR)
{
echo " * (especially on the Windows platform)\n " ;
}
echo " * If this is the case, please launch this\n " ;
echo " * utility from your web server.\n " ;
echo " ** WARNING **\n " ;
}
// mandatory
echo " \n** Mandatory requirements **\n\n " ;
check( version_compare ( phpversion () , ' 5.2.4 ' , ' >= ' ) , sprintf ( ' PHP version is at least 5.2.4 (%s) ' , phpversion ()) , ' Current version is ' . phpversion () , true );
// warnings
echo " \n** Optional checks **\n\n " ;
check( class_exists ( ' PDO ' ) , ' PDO is installed ' , ' Install PDO (mandatory for Propel and Doctrine) ' , false );
if ( class_exists ( ' PDO ' ))
{
$drivers = PDO :: getAvailableDrivers();
check( count ( $drivers ) , ' PDO has some drivers installed: ' . implode ( ' , ' , $drivers ) , ' Install PDO drivers (mandatory for Propel and Doctrine) ' );
}
check( class_exists ( ' DomDocument ' ) , ' PHP-XML module is installed ' , ' Install and enable the php-xml module (required by Propel) ' , false );
check( class_exists ( ' XSLTProcessor ' ) , ' XSL module is installed ' , ' Install and enable the XSL module (recommended for Propel) ' , false );
check( function_exists ( ' token_get_all ' ) , ' The token_get_all() function is available ' , ' Install and enable the Tokenizer extension (highly recommended) ' , false );
check( function_exists ( ' mb_strlen ' ) , ' The mb_strlen() function is available ' , ' Install and enable the mbstring extension ' , false );
check( function_exists ( ' iconv ' ) , ' The iconv() function is available ' , ' Install and enable the iconv extension ' , false );
check( function_exists ( ' utf8_decode ' ) , ' The utf8_decode() is available ' , ' Install and enable the XML extension ' , false );
check( function_exists ( ' posix_isatty ' ) , ' The posix_isatty() is available ' , ' Install and enable the php_posix extension (used to colorized the CLI output) ' , false );
$accelerator =
( function_exists ( ' apc_store ' ) && ini_get ( ' apc.enabled ' ))
||
function_exists ( ' eaccelerator_put ' ) && ini_get ( ' eaccelerator.enable ' )
||
function_exists ( ' xcache_set ' )
;
check( $accelerator , ' A PHP accelerator is installed ' , ' Install a PHP accelerator like APC (highly recommended) ' , false );
check( ! ini_get ( ' short_open_tag ' ) , ' php.ini has short_open_tag set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' magic_quotes_gpc ' ) , ' php.ini has magic_quotes_gpc set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' register_globals ' ) , ' php.ini has register_globals set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' session.auto_start ' ) , ' php.ini has session.auto_start set to off ' , ' Set it to off in php.ini ' , false );
check( version_compare ( phpversion () , ' 5.2.9 ' , ' != ' ) , ' PHP version is not 5.2.9 ' , ' PHP 5.2.9 broke array_unique() and sfToolkit::arrayDeepMerge(). Use 5.2.10 instead [Ticket #6211] ' , false );
if ( ! is_cli())
{
echo ' </pre></body></html> ' ;
}
function is_cli()
{
return ! isset ( $_SERVER [ ' HTTP_HOST ' ]);
}
/* *
* Checks a configuration.
*/
function check( $boolean , $message , $help = '' , $fatal = false )
{
echo $boolean ? " OK " : sprintf ( " [[%s]] " , $fatal ? ' ERROR ' : ' WARNING ' );
echo sprintf ( " $message %s\n " , $boolean ? '' : ' : FAILED ' );
if ( ! $boolean )
{
echo " *** $help ***\n " ;
if ( $fatal )
{
die ( " You must fix this problem before resuming the check.\n " );
}
}
}
/* *
* Gets the php.ini path used by the current PHP interpretor.
*
* @return string the php.ini path
*/
function get_ini_path()
{
if ( $path = get_cfg_var ( ' cfg_file_path ' ))
{
return $path ;
}
return ' WARNING: not using a php.ini file ' ;
}
if ( ! is_cli())
{
echo ' <html><body><pre> ' ;
}
echo " ********************************\n " ;
echo " * *\n " ;
echo " * symfony requirements check *\n " ;
echo " * *\n " ;
echo " ********************************\n\n " ;
echo sprintf ( " php.ini used by PHP: %s\n\n " , get_ini_path());
if (is_cli())
{
echo " ** WARNING **\n " ;
echo " * The PHP CLI can use a different php.ini file\n " ;
echo " * than the one used with your web server.\n " ;
if ( ' \\ ' == DIRECTORY_SEPARATOR)
{
echo " * (especially on the Windows platform)\n " ;
}
echo " * If this is the case, please launch this\n " ;
echo " * utility from your web server.\n " ;
echo " ** WARNING **\n " ;
}
// mandatory
echo " \n** Mandatory requirements **\n\n " ;
check( version_compare ( phpversion () , ' 5.2.4 ' , ' >= ' ) , sprintf ( ' PHP version is at least 5.2.4 (%s) ' , phpversion ()) , ' Current version is ' . phpversion () , true );
// warnings
echo " \n** Optional checks **\n\n " ;
check( class_exists ( ' PDO ' ) , ' PDO is installed ' , ' Install PDO (mandatory for Propel and Doctrine) ' , false );
if ( class_exists ( ' PDO ' ))
{
$drivers = PDO :: getAvailableDrivers();
check( count ( $drivers ) , ' PDO has some drivers installed: ' . implode ( ' , ' , $drivers ) , ' Install PDO drivers (mandatory for Propel and Doctrine) ' );
}
check( class_exists ( ' DomDocument ' ) , ' PHP-XML module is installed ' , ' Install and enable the php-xml module (required by Propel) ' , false );
check( class_exists ( ' XSLTProcessor ' ) , ' XSL module is installed ' , ' Install and enable the XSL module (recommended for Propel) ' , false );
check( function_exists ( ' token_get_all ' ) , ' The token_get_all() function is available ' , ' Install and enable the Tokenizer extension (highly recommended) ' , false );
check( function_exists ( ' mb_strlen ' ) , ' The mb_strlen() function is available ' , ' Install and enable the mbstring extension ' , false );
check( function_exists ( ' iconv ' ) , ' The iconv() function is available ' , ' Install and enable the iconv extension ' , false );
check( function_exists ( ' utf8_decode ' ) , ' The utf8_decode() is available ' , ' Install and enable the XML extension ' , false );
check( function_exists ( ' posix_isatty ' ) , ' The posix_isatty() is available ' , ' Install and enable the php_posix extension (used to colorized the CLI output) ' , false );
$accelerator =
( function_exists ( ' apc_store ' ) && ini_get ( ' apc.enabled ' ))
||
function_exists ( ' eaccelerator_put ' ) && ini_get ( ' eaccelerator.enable ' )
||
function_exists ( ' xcache_set ' )
;
check( $accelerator , ' A PHP accelerator is installed ' , ' Install a PHP accelerator like APC (highly recommended) ' , false );
check( ! ini_get ( ' short_open_tag ' ) , ' php.ini has short_open_tag set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' magic_quotes_gpc ' ) , ' php.ini has magic_quotes_gpc set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' register_globals ' ) , ' php.ini has register_globals set to off ' , ' Set it to off in php.ini ' , false );
check( ! ini_get ( ' session.auto_start ' ) , ' php.ini has session.auto_start set to off ' , ' Set it to off in php.ini ' , false );
check( version_compare ( phpversion () , ' 5.2.9 ' , ' != ' ) , ' PHP version is not 5.2.9 ' , ' PHP 5.2.9 broke array_unique() and sfToolkit::arrayDeepMerge(). Use 5.2.10 instead [Ticket #6211] ' , false );
if ( ! is_cli())
{
echo ' </pre></body></html> ' ;
}