Ben php global değişkenler ile sorun yaşıyorum. Ben bir initSession çağıran başka bir dosya () başka bir dosyada tanımlanmış gerektiren bir dosyada bir $ ekran var dizi var. InitSession () "global $ ekranı" bildirir ve daha sonra ilk komut set değerini kullanarak aşağı $ ekranını işler.
Bu nasıl mümkün olur?
), Işler daha da karmaşık hale Eğer $ ekranı ayarlamaya çalışırsanız, sonra tekrar (initSession aramak için, ilk kez kullanılan değerini kullanır. Aşağıdaki kod anlatacağız. Birisi bu açıklayan gitmek olabilir?
$screen = "list1.inc"; // From model.php
require "controller.php"; // From model.php
initSession(); // From controller.php
global $screen; // From Include.Session.inc
echo $screen; // prints "list1.inc" // From anywhere
$screen = "delete1.inc"; // From model2.php
require "controller2.php"
initSession();
global $screen;
echo $screen; // prints "list1.inc"
Update:
If I declare $screen global again just before requiring the second model, $screen is updated properly for the initSession() method. Strange.