PHP'nin günümüzün çok kullanılan bir betik dili olmasıyla birlikte, hazır kullanabileceğiniz kodlar üreten halka açık birçok depo ve kütüphane oluşturuldu. PHP geliştiricileri geriye dönük uyumluluğu mümkün olduğunca korumaya çalıştılar, dolayısıyla eski bir PHP sürümü ile birlikte yazılmış bir PHP kodu hiçbir değişiklik yapılmasına gerek duyulmadan (ideal olarak) yeni PHP sürümleri ile çalışabilir halde kaldı. Ancak uygulamada, bazı değişikliklerin yapılması gerekebilir.
Eski kodları etkileyen yakın geçmişe ait iki önemli değişiklik:
register_globals
php.ini yönergesinin öntanımlı değeri off'tur
(kapalıdır). Bu değerlere erişim için tercih edilen süper küresel
dizi kullanımından yukarıda bahsettik. Eski betikler, kitaplar ve
öğreticiler bu yönergenin on
olduğu kabul edilerek
yazılmış olabilir. Bu yönerge on
olduğunda, örneğin
http://mesela.dom/foo.php?id=42
URL'sine
gelen bir istek ile $id değişkeni otomatik
olarak oluşturulur. Bu yönergenin açık ya da kapalı olduğuna
bakılmazsızın, $_GET['id()] daima
kullanılabilir olacaktır.