parse_str(str_replace('/','&',$str), $output);
var_dump($output);
extract($output);
Учитывайте, что вываливая переменные из неизвестного источника в текущий контекст вы рискуете нарваться на подмену текущих переменных на левые значения, или, при использовании флага EXTR_SKIP, на неявное поведение. В идеале используйте массив, полученный при парсинге. <?php
class Session
{
protected function tryLoadSession()
{
if (empty($_SESSION)) {
session_start();
}
}
public function get($name)
{
$this->tryLoadSession();
if (empty($_SESSION[$name])) {
return null;
}
return $_SESSION[$name];
}
public function set($name, $value)
{
$this->tryLoadSession();
$_SESSION[$name] = $value;
}
}
$session = new Session;
$session->get('user_id');
$session->set('user_id', 100500);