2. register_globals Direktifi
Tanım
php.ini ayar dosyası içerisinde bulunan register_globals direktifi, POST ve GET
metodu ile gönderilen değerleri, oturum, çerezler ve ortam değerlerini
kendi isimleriyle tanımlanmış birer değişken olarak kullanılmasını sağlar.
Örneğin, test.php?deneme=1 olarak kullanılan bir betikte GET
metodu ile gönderdiğimiz deneme isimli değere erişmek için
betik içerisinde $deneme değişkenini kullanabilmek gibi.
Uyarı: register_globals direktifi php.ini ayar dosyası içerisinde On olarak
ayarlanmış ise yukarıdaki durum geçerlidir.
Eğer Off olarak ayarlanmış ise bu değerlere, kendi
isimleriyle tanımlanmış birer değişken olarak erişilemez.
PHP 4.1.0 Sürümünden Sonraki Farklılıklar
Betiklerde oluşan güvenlik açıkları nedeniyle PHP 4.1.0 sürümü ve sonraki
sürümlere ait paketler içerisinde bu direktif artık Off olarak ayarlanmış şekilde gelmektedir.
Tanımda anlatılan değerlere erişmek için süper-global diziler ismi
verilen dizilerin kullanılması gerekmektedir.
Örneğin, test.php?deneme=1 olarak kullanılan bir betikte deneme isimli değere
erişmek için $deneme değişkeni yerine $_GET['deneme'] değişkeninin
kullanılması gerekmektedir.
Bunu değere eski sürümlerdeki gibi $deneme değişleni ile
erişebilmek için, php.ini ayar dosyası içerisinde bulunan
register_globals direktifini bulup, bu ayarı On olarak
değiştirilmesi gerekmektedir.
Terimler
| direktif | directive |
| oturum | session |
| çerez | cookie |
| ortam | environment |
| değişken | variable |
| betik | script |
| dizi | array |