<?php $container = new \Njasm\Container\Container(); for ($i = 0; $i < $argv[1]; $i++) { $j = $container->get('J'); } $results = ['time' => 0, 'files' => count(get_included_files()), 'memory' => memory_get_peak_usage() / 1024 / 1024]; echo json_encode($results);
<?php $container = new \Njasm\Container\Container(); $container->bindSingleton('A', 'A'); //trigger autoloader $a = $container->get('A'); unset($a); $t1 = microtime(true); for ($i = 0; $i < 10000; $i++) { $a = $container->get('A'); } $t2 = microtime(true); $results = ['time' => $t2 - $t1, 'files' => count(get_included_files()), 'memory' => memory_get_peak_usage() / 1024 / 1024]; echo json_encode($results);
<?php $container = new \Njasm\Container\Container(); $container->bind('A', 'A'); $t1 = microtime(true); for ($i = 0; $i < 10000; $i++) { $a = $container->get('A'); } $t2 = microtime(true); $results = ['time' => $t2 - $t1, 'files' => count(get_included_files()), 'memory' => memory_get_peak_usage() / 1024 / 1024]; echo json_encode($results);
/** HELPER METHODS **/ protected function getServiceProvider($key = "SingleClassOnServiceProvider") { $provider = new \Njasm\Container\Container(); $provider->set($key, function () { return new SingleClassOnServiceProvider(); }); return $provider; }