сессии & ссылки

Kirill

Новичок
сессии & ссылки

test.php

Код:
<?php
	session_name('test');
	session_start();
	
	print '<pre>';
	var_dump($_SESSION);
	print '</pre>';
	
	if(isset($_GET['type'])){
		$type = intval($_GET['type']);
		$_SESSION['type'] = $type;
	}
	else{
		$type = intval($_SESSION['type']);
	}
	
	print '<pre>';
	var_dump($_SESSION);
	print '</pre>';
?>
пробуем
- test.php?type=1:

Код:
array(0) {
}

array(1) {
  ["type"]=>
  int(1)
}
- test.php

Код:
array(1) {
  ["type"]=>
  &int(1)
}

array(1) {
  ["type"]=>
  &int(1)
}
Вопрос почему в первом случае int, во втором случае &int ?
 

Фанат

oncle terrible
Команда форума
для начала, не нужно давать ключам массива $_SESSION имена, совпадающие с именами глобальных переменных.
 

FractalizeR

Новичок
Выполнил ваш скрипт. У меня нормальное поведение:

PHP:
array(1) {
  ["type"]=>
  int(1)
}

array(1) {
  ["type"]=>
  int(1)
}
Вы какую версию PHP используете? У меня 5.1.2 стоит.

Автор оригинала: *****
для начала, не нужно давать ключам массива $_SESSION имена, совпадающие с именами глобальных переменных.
Почему? Если в коде для доступа к переменным сессии используется только $_SESSION это не должно приводить к непредсказуемым результатам.
 
Сверху