Вы недавно отредактировали, чтобы сказать, что это происходит, когда вы 'включаете' файл.
Файлы и глобализация на самом деле не ладят. Вы на самом деле должны Global и в файл. Так что, если test1.php имеет этот код
$a = 5;
и test2.php имели этот код:
$a = 3;
и test3.php имели этот код:
$a = 10;
и наконец (Да, слишком много файлов) testMaster.php имеет этот код
include 'test1.php';
include 'test2.php';
include 'test3.php';
echo $a;
Произошла бы неопределенная ошибка переменной. Вам нужно будет указать индивидуально глобальную переменную в каждом файле, чтобы все они были установлены.
Теперь, я почти уверен, что это не повлияет на код, который вы дали нам, или если будет включен function test()
, а затем вызван test();
и сразу после него вы добавите echo $a;
. Но если вы определите AND для вызова test()
в отдельном файле, а не в echo $a
, это вызовет глобальную ошибку.
Я не уверен, отвечает ли это на ваш вопрос, но да, это недостаток в системе include.