本文整理匯總了PHP中c::getEnv方法的典型用法代碼示例。如果您正苦於以下問題:PHP c::getEnv方法的具體用法?PHP c::getEnv怎麽用?PHP c::getEnv使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類c
的用法示例。
在下文中一共展示了c::getEnv方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: timeout
public static function timeout($func, $ms = null, $async = true, $forceEnv = false)
{
$closure = new Cana_SuperClosure($func);
$encoded = base64_encode(serialize($closure));
if ($ms) {
$sleep = ' -s=' . $ms;
}
if ($forceEnv) {
$env = ' -e=' . $forceEnv;
} else {
$env = ' -e=' . c::getEnv(false);
}
if (file_exists('/usr/local/bin/php')) {
$v = 'local';
} else {
$v = 'auto';
}
$cmd = c::config()->dirs->root . 'cli/timeout-' . $v . '.php' . $sleep . ' -c=' . str_replace("'", '"', escapeshellarg($encoded)) . $env;
if (getenv('TRAVIS')) {
$async = false;
}
if ($async) {
try {
$log = getenv('TRAVIS') ? '/dev/null' : '/var/log/timeout';
exec('nohup ' . $cmd . ' >> ' . $log . ' 2>&1 &');
} catch (Exception $e) {
Crunchbutton_Log::error(['type' => 'timeout exception', 'cmd' => $cmd]);
}
} else {
exec($cmd . ' 2>&1 &', $o);
if ($o) {
print_r($o);
}
}
}