«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как устранить предупреждение о побочном эффекте сеанса PHP, связанное с глобальными переменными?

Как устранить предупреждение о побочном эффекте сеанса PHP, связанное с глобальными переменными?

Опубликовано 4 ноября 2024 г.
Просматривать:658

How to Resolve PHP Session Side-Effect Warning Related to Global Variables?

Предупреждение о побочном эффекте сеанса PHP: проблемы с глобальными переменными

При попытке разместить веб-сайт PHP вы можете увидеть предупреждение о том, что ваш скрипт использует побочный эффект сеанса, который устарел в PHP 4.2.3. Это предупреждение возникает, когда расширение сеанса не распознает глобальные переменные в качестве источника данных, если не включена опция Register_globals.

Понимание проблемы

Глобальные переменные — это переменные, которые могут быть доступным из любой области действия скрипта. В старых версиях PHP расширение сеанса автоматически регистрировало глобальные переменные в сеансе. Однако такое поведение было сочтено угрозой безопасности и было удалено в PHP 4.2.3.

Отслеживание источника

Чтобы определить источник предупреждения, найдите случаи, когда вы используете глобальные переменные в контексте вашего сеанса. В частности, проверьте наличие переменных с тем же именем, что и переменные сеанса, так как это может вызвать предупреждение.

Отключение предупреждения

Вы можете отключить предупреждение, установив PHP для параметров конфигурации «session.bug_compat_warn» и «session.bug_compat_42» значение «выключено». Эти параметры можно настроить следующими способами:

  • php.ini:
session.bug_compat_warn = 0
session.bug_compat_42 = 0
  • .htaccess:
php_value session.bug_compat_warn 0
php_value session.bug_compat_42 0

Альтернативное решение:

В качестве альтернативы вы можете запретить PHP пытаться найти существующие переменные, добавив в скрипт следующие строки:

ini_set('session.bug_compat_warn', 0);
ini_set('session.bug_compat_42', 0);
Заявление о выпуске Эта статья воспроизведена: 1729168997 Если есть какие -либо нарушения, пожалуйста, свяжитесь с [email protected], чтобы удалить его.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3