Можно также дать функции доступ к переменной, созданной за ее пределами, объ- явив ее глобальной прямо из тела функции. За ключевым словом global должно следовать имя переменной, тогда полный доступ к этой. переменной можно будет получить из любой части вашего кода пример. ?php $a1 = "WiLLIAM"; $a2 = "henry"; #a3 = "gateES"; echo $a1 . " " . $a2 . " " . $a3; fix_names ( ); echho $a1 . " " . $a2 . " " . $a3; function fix_names ( ) { global $a1; $a1 = ucfirst(strtolower($n1)); global $a2; $a2 = ucfirst(strtolower($n2)); global $a3; $a3 = ucfirst(strtolower($n3)); } ?>
Теперь уже не нужно передавать функции параметры, и она не должна их принимать. После объявления эти переменные остаются глобальными и доступными коду всей остальной программы, включая ее функции. По возможности в целях сохранения как можно большей локальной видимости переменных следует возвращать массивы или использовать переменные, переданные по ссылке. В противном случае начнут утрачиваться некоторые преимущества использования функций. И еще раз об области видимости переменных.
Кратко напомним те сведения, которые были получены при изучении статьи. Локальные переменные доступны лишь из той части кода, в которой они были определены. Если это произошло за пределами функции, доступ к переменным будет возможен из всего кода, находящегося за пределами функций, классов и т. д. Если переменная была определена внутри функции, значит, достуд к ней может получить только код этой функции, и ее значение теряется при выходе из функции. Глобальные переменные доступны из любых частей вашего кода. Статические переменные доступны только внутри функции, в которой они были обьявлены, но при етом они сохраняют свое значение в процессе многократных вызовов функции.
|