Я новичок в программировании и на этом веб-сайте, поэтому заранее прошу прощения, если неправильно сформулирую свои вопросы или не знаю, как правильно общаться. Я слышал, что использование глобальных переменных - плохая практика, но я просто стремлюсь узнать и понять обширный мир кодирования и реализовать полученные знания.
Я встречал этот код в w3schools. com (https://www.w3schools.com/php/php_superglobals_globals.asp) веб-сайт:
<?php
$x = 75;
$y = 25;
function addition() {
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
addition();
echo $z;
?>
Результат кода был: 100
Затем веб-сайт сказал:
"В приведенном выше примере, поскольку z - это переменная, присутствующая в массиве $ GLOBALS, она также доступна извне функции!"
Является ли $ z глобальной переменной, которая была объявлена внутри функция? Можете ли вы создать переменную, а затем просто объявить ее в другой части кода? Я также думал, что вам нужно создать глобальную переменную перед вызовом функции, чтобы суперглобальный элемент мог работать внутри функции?
Следующий код - простой пример, который я пытался создать:
<?php
function add() {
echo $GLOBALS['a'] = "hello world";
}
add();
?>
Мой результат: hello world
Почему вы можете запустить функцию в PHP, используя суперглобальную переменную, когда глобальная переменная никогда не создавалась?
Я ценю любую обратная связь - спасибо