webforge / configuration-tester
test your php configuration from cli or unit tests
Requires
- guzzle/guzzle: 3.7.4@stable
Requires (Dev)
- satooshi/php-coveralls: dev-master
- webforge/testplate: 1.*
This package is auto-updated.
Last update: 2024-11-07 03:29:02 UTC
README
test your php configuration from cli or unit tests The ConfigurationTester is able to check configuration of the environment (currently PHP-ini values) to a set of fixed values. The php.ini settings can be received through the ConfigurationRetriever (for example from a apache dump-script).
use Webforge\Setup\ConfigurationTester; $t = new ConfigurationTester(); $t->INI('mbstring.internal_encoding', 'utf-8');
You can use several operators to compare values
$t->INI('post_max_size','2M', '>='); $t->INI('post_max_size',1024, '<');
values like "2M" (filesizes) will get normalized, so that it is natural to compare them.
// if ini_get('post_max_size') is "2M" or 2097152 doesn't matter $t->INI('post_max_size',2*1024*1024); $t->INI('post_max_size','2M');
You can use the ConfigurationTester to test your webserver (or other remotes) PHP-ini values:
use Webforge\Setup\ConfigurationTester; use Webforge\Setup\RemoteConfigurationRetriever; $t = new ConfigurationTester(new RemoteConfigurationRetriever('http://localhost:80/dump-inis.php'));
put dump-inis.php into webroot with this contents:
<?php print json_encode(ini_get_all()); ?>
You can get the results of the checks, with retrieving the defects. They are instances from ConfigurationDefect Class and can be converted to String to verbose their failure:
if (count($t->getDefects()) > 0) { throw new \RuntimeException('Please check your Config: '.implode("\n", $t->getDefects())); }
You could get nicer formatted output with the ConfigurationTester::__toString(). This may change in the future for a ConfigurationTesterPrinter or something..
print $t;