Странно.Мой PHP-код выполняет части if и else.Следующий код начинается там, где $ _SESSION ['abc'] еще не установлено.
//echo $_SESSION['abc'];
if(!isset($_SESSION['abc'])){
echo "not showing this echo";
$_SESSION['abc'] = "new";
} else {
echo " why it jumps here, in XAMPP?";
}
Мой настоящий код был более сложным, поэтому я сделал его проще, как указано выше.Приведенный выше код не повторяет "не показывает это эхо";даже если $ _SESSION ['abc'] не установлено.Если я закомментирую утверждение $_SESSION['abc'] = "new";
, оно повторяет «не показывать это эхо».
То, что я сейчас выяснил:
Это происходит только в XAMPP,на рабочем сервере то же самое работает нормально.
Это происходит, когда я выполняю условие else в блоке if.И это условие устанавливает переменную сеанса.
- Я сам думал, что код выполняется дважды или еще что-то, но это не так.
- И что более важно условие «если» выполняется, есливы раскомментируете первую строку
echo $_SESSION['abc'];
, она покажет неопределенную ошибку индекса. - Самое странное чувство для меня, когда оно достигает
$_SESSION['abc'] = "new";
в блоке "if", оно переходит на "else", игнорируя эхострока перед ним.
Странно !!Я что-то упустил или это ошибка XAMPP.Да, код работает должным образом на рабочем сервере.
РЕДАКТИРОВАТЬ: Я хотел бы добавить, что только для этого поведения я также переустановил XAMPP (для последней версии).А что касается того, «как я узнаю, что он устанавливает переменную сеанса, но не выводит строку перед ней», он печатает echo $_SESSION['abc'];
в блоке else, но показывает неопределенную ошибку индекса, если я раскомментирую первую строку echo $_SESSION['abc'];
Код с добавленной строкой эха в блоке else.
//echo $_SESSION['abc'];
if(!isset($_SESSION['abc'])){
echo "not showing this echo";
$_SESSION['abc'] = "new";
} else {
echo " why it jumps here, in XAMPP?";
echo $_SESSION['abc'];
}
ОБНОВЛЕНИЕ 2018-06-03 Я делал вышеуказанный код в Laravel.Я попробовал приведенный выше код из фреймворка Laravel в простом PHP-файле, и он работал в XAMPP, как и должно быть.Таким образом, новая информация, это не работает в комбинации Laravel-XAMPP.Версии: Laravel 5.4 и XAMPP 7.2.5
СЕЙЧАС ??