Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
public function onReady()
{
$this->errlogfile = dirname(__FILE__).'/cgi-error.log';
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridebinpath'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridecwd'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridechroot'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverrideuser'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridegroup'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgioutputerrors'])) {Daemon::$settings[$k] = TRUE;}
}
<?
class Daemon {
public static $settings = array();
public static function reset() {
Daemon::$settings = array(
'modcgiallowoverridecwd'=> false,
'modcgiallowoverridegroup'=> false,
);
}
public static function asd() {
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridebinpath'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridecwd'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridechroot'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverrideuser'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgiallowoverridegroup'])) {Daemon::$settings[$k] = TRUE;}
if (!isset(Daemon::$settings[$k = 'modcgioutputerrors'])) {Daemon::$settings[$k] = TRUE;}
}
public static function qwe() {
Daemon::$settings = array_merge(array(
'modcgiallowoverridebinpath'=> true,
'modcgiallowoverridecwd'=> true,
'modcgiallowoverridechroot'=> true,
'modcgiallowoverrideuser'=> true,
'modcgiallowoverridegroup'=> true,
'modcgioutputerrors'=> true,
), Daemon::$settings);
}
}
$ts1 = microtime(true);
for ($i=0;$i<100000;$i++) {
Daemon::reset();
Daemon::asd();
}
$ts2 = microtime(true);
echo ($ts2-$ts1)."\n";
$ts1 = microtime(true);
for ($i=0;$i<100000;$i++) {
Daemon::reset();
Daemon::qwe();
}
$ts2 = microtime(true);
echo ($ts2-$ts1)."\n";
?>Daemon::$settings += array( 'modcgiallowoverridebinpath'=> true, 'modcgiallowoverridecwd'=> true, 'modcgiallowoverridechroot'=> true, 'modcgiallowoverrideuser'=> true, 'modcgiallowoverridegroup'=> true, 'modcgioutputerrors'=> true, );
xor eax,eax вы зря :)
phpDaemon — фреймворк асинхронных приложений