*/ public function get($name) { if (!array_key_exists($name, $_SERVER)) { return None::create(); } $value = $_SERVER[$name]; if (is_scalar($value)) { /** @var \PhpOption\Option */ return Some::create((string) $value); } if (null === $value) { /** @var \PhpOption\Option */ return Some::create(null); } return None::create(); } /** * Set an environment variable. * * @param non-empty-string $name * @param string|null $value * * @return void */ public function set($name, $value = null) { $_SERVER[$name] = $value; } /** * Clear an environment variable. * * @param non-empty-string $name * * @return void */ public function clear($name) { unset($_SERVER[$name]); } }