НОЛЬ - секунд
ОДНА - секундА
ДВЕ - секундЫ
ТРИ - секундЫ
ЧЕТЫРЕ - секундЫ
ПЯТЬ - секунд
ШЕСТЬ - секунд
СЕМЬ - секунд
ВОСЕМЬ - секунд
ДЕВЯТЬ - секунд
ДЕСЯТЬ - секунд
ОДИННАДЦАТЬ - секунд
ДВЕНАДЦАТЬ - секунд
ТРИНАДЦАТЬ - секунд
ЧЕТЫРНАДЦАТЬ - секунд
ПЯТНАДЦАТЬ - секунд
ШЕСТНАДЦАТЬ - секунд
СЕМНАДЦАТЬ - секунд
ВОСЕМНАДЦАТЬ - секунд
ДЕВЯТНАДЦАТЬ - секунд
ДВАДЦАТЬ - секунд
ДВАДЦАТЬ ОДНА - секундА
dirname(__FILE__)
прекрасно заменяется на __DIR__
class Locale
{
/**
* @var string
*/
private $value;
public function __construct(string $value)
{
$this->value = $value;
}
public function __toString()
{
return $this->value;
}
}
class LocaleFactory
{
/**
* @var RequestStack
*/
private $requestStack;
/**
* @var string
*/
private $default;
public function __construct(RequestStack $requestStack, string $default)
{
$this->requestStack = $requestStack;
$this->default = $default;
}
public function create(): Locale
{
if ($request = $this->requestStack->getMasterRequest()) {
return new Locale($request->get('locale', $this->default));
}
return new Locale($this->default);
}
}
services:
App\Locale\Locale:
factory: ['@App\Locale\LocaleFactory', 'create']
public function add(Request $request, EntityManagerInterface $manager, Locale $lang)
yourprog worker1
yourprog worker2
$this->getContainer()
Это прикольно и удобно
40 + 1 + 40 = 81
mt_rand(322, 595)
mt_rand(322, 514)
$a = 322;
$b = 595;
$m = 40;
// первый раунд
$rnd = mt_rand($a, $b);
$prev = $rnd;
// ... что-то происходит
// второй и последующие раунды
$rnd = mt_rand($a, $b - 2 * $m - 1);
if ($rnd > $prev - $m) $rnd += 2 * $m + 1;
if ($rnd > $b) $rnd -= ($b - $a);
$prev = $rnd;
// ...