PHP 8.2 Desteği Bitiyor: 31 Aralık'tan Önce Ne Yapmalı?
31 Aralık 2026'da PHP 8.2'nin güvenlik desteği sona eriyor. 1 Ocak 2027'den itibaren PHP projesi, bir açık ne kadar ciddi olursa olsun PHP 8.2 için düzeltme yayınlamayacak. Zamanlama bundan daha anlamlı olamazdı: Ekim 2026'da kritik PHP2Shell açıkları, saldırganların PHP motorundaki açıklara ne kadar hızlı yöneldiğini ve bir yamayı yayınlandığı gün kurabilmenin ne kadar önemli olduğunu gösterdi. Gelecek yıl PHP 8.2'de kalan uygulamaların bu seçeneği olmayacak. Web siteleriniz veya uygulamalarınız PHP 8.2 ya da daha eski bir sürümde çalışıyorsa, yükseltmeyi planlamanın tam zamanı.
Destek Sonu Ne Demek?
Her PHP sürümü, hata ve güvenlik düzeltmelerini içeren iki yıllık aktif desteğin ardından iki yıllık yalnızca güvenlik desteği alır. Güvenlik desteği bittiğinde sürüm destek sonuna (end of life) ulaşır. Çalışmaya devam eder, ancak yeni keşfedilen açıklar artık PHP projesi tarafından düzeltilmez ve zamanla kütüphaneler ve framework'ler de o sürüm için desteği bırakır.
Bazı kuruluşlar bu süreyi uzatabilir. Debian, Ubuntu ve Red Hat Enterprise Linux gibi uzun süreli destek sunan Linux dağıtımları, dağıttıkları PHP sürümlerine çoğu zaman güvenlik düzeltmelerini geri taşır; ticari sağlayıcılar da ücretli uzatılmış destek sunar. Bu seçenekler zaman kazandırabilir, ancak sağlayıcıya bağlıdır, her açığı kapsamayabilir ve modern paketlerle artan uyumsuzluk sorununu çözmez.
PHP Destek Takvimi
Kasım 2026 itibarıyla güncel PHP sürümlerinin destek durumu şöyle:
- PHP 8.1: 31 Aralık 2025'ten beri desteği sona erdi
- PHP 8.2: güvenlik desteği 31 Aralık 2026'da bitiyor
- PHP 8.3: güvenlik desteği 31 Aralık 2027'ye kadar
- PHP 8.4: aktif destek 31 Aralık 2026'ya, güvenlik desteği 31 Aralık 2028'e kadar
- PHP 8.5: aktif destek 31 Aralık 2027'ye, güvenlik desteği 31 Aralık 2029'a kadar
Hangi Sürüme Geçmelisiniz?
Çoğu uygulama için en iyi hedef PHP 8.4 veya PHP 8.5'tir. PHP 8.3'e geçmek en küçük adımdır, ancak güvenlik desteği yalnızca bir yıl sonra bitiyor; bu da 2027'de aynı işi tekrarlamak demek. PHP 8.4, 2028 sonuna kadar güvenlik düzeltmeleri ve güncel kütüphanelerle geniş uyumluluk sunar; bu da onu güvenli ve temkinli bir seçim yapar. PHP 8.5 ise 2029 sonuna kadar en uzun yolu sağlar ve bağımlılıklarınız onu zaten destekliyorsa iyi bir seçimdir.
Belirleyici faktör genellikle bağımlılıklarınızdır. Karar vermeden önce framework'ünüzün, paketlerinizin, barındırma ortamınızın ve PHP eklentilerinizin hedef sürümü desteklediğini kontrol edin.
Laravel Uygulamaları İçin Ne Anlama Geliyor?
Laravel ekipleri için PHP yükseltmesi ile framework yükseltmesi birbirine sıkı sıkıya bağlıdır. Laravel 12, PHP 8.2 ile 8.5 arasını destekler; ancak hata düzeltme dönemi 13 Ağustos 2026'da sona erdi ve güvenlik düzeltmeleri 24 Şubat 2027'de bitiyor. 2026'nın ilk çeyreğinde yayınlanan Laravel 13 ise en az PHP 8.3 gerektiriyor.
Pratikte PHP 8.2'de kalan bir uygulama Laravel 12'ye mahkûm kalır ve Laravel 12'nin kendisi de Şubat 2027'de güvenlik düzeltmesi almayı bırakır. En verimli yol genellikle önce PHP'yi 8.4 veya 8.5'e yükseltmek, ardından uygulamayı Laravel 13'e taşımaktır. Daha eski Laravel sürümlerindeki uygulamalar birden fazla framework yükseltmesi gerektirebilir; bu da erken başlamak için iyi bir nedendir.
PHP 8.2 ile Yeni Sürümler Arasında Neler Değişiyor?
PHP 8 içindeki yükseltmeler genellikle PHP 7'den yapılan geçişten çok daha sorunsuzdur; yine de eski kodu etkileyebilecek değişiklikler var:
- PHP 8.4'te örtük nullable parametreler kullanımdan kaldırıldı. Açık bir nullable tip olmadan, bir tip ve null varsayılan değerle tanımlanan parametreler artık kullanımdan kaldırma (deprecation) uyarısı veriyor ve güncellenmeli.
- PHP 8.4'te bazı eklentiler çekirdekten çıkarıldı. IMAP, OCI8, PDO_OCI ve Pspell PHP çekirdeğinden PECL'e taşındı; bunlara bağlı uygulamaların bu eklentileri ayrıca kurması veya alternatifleriyle değiştirmesi gerekiyor.
- Her sürümde yeni kullanımdan kaldırmalar. Bunlar kodu hemen bozmaz, ancak loglarda görünür ve çoğu zaman sonraki bir ana sürümde hataya dönüşür; bu yüzden yükseltme sırasında düzeltilmeye değer.
- Üçüncü taraf paketlerin güncellenmesi gerekebilir. Eski paket sürümleri yeni PHP sürümlerini desteklemediğini belirtebilir; bu yüzden bağımlılık yükseltmeleri genellikle işin bir parçasıdır.
Yükseltme faydalı iyileştirmeler de getirir: PHP 8.3'te tipli sınıf sabitleri, PHP 8.4'te property hook'lar ve asimetrik görünürlük, PHP 8.5'te pipe operatörü ve sürümler boyunca performans iyileştirmeleri.
Adım Adım Yükseltme Planı
- Tüm ortamların envanterini çıkarın. Test ortamı, iç araçlar, cron ve kuyruk sunucuları dahil PHP çalıştıran tüm sunucuları, container'ları ve siteleri listeleyin ve her birinin PHP sürümünü kaydedin.
- Uyumluluğu kontrol edin. Hangi paketlerin yükseltmeyi engellediğini görmek için
composer why-not php 8.4komutunu çalıştırın ve uygulamanızın kullandığı eklentileri gözden geçirin. - Otomatik araçlar kullanın. PHPStan ile statik analiz, PHPCompatibility ile uyumluluk kontrolleri ve Rector ile otomatik refactoring, sorunların çoğunu canlı ortama ulaşmadan yakalar.
- Bağımlılıkları güncelleyin. Framework'ünüzü ve paketlerinizi hedef PHP sürümünü destekleyen sürümlere yükseltin.
- Kapsamlı test edin. Otomatik testlerinizi çalıştırın; ardından ödemeler, entegrasyonlar, içe aktarımlar ve zamanlanmış işler gibi kritik akışları yeni sürümü çalıştıran bir test ortamında deneyin.
- Yayına alın ve izleyin. Yeni sürümü dağıtın, tüm PHP süreçlerini ve worker'ları yeniden başlatın ve ilk günlerde hata loglarını ve kullanımdan kaldırma uyarılarını yakından takip edin.
Zamanında Yükseltemiyorsanız
Bazı uygulamalar, çoğu zaman eskimiş bağımlılıklar veya ciddi emek gerektiren özel kod nedeniyle yıl sonundan önce yükseltilemez. Bu durumda yükseltme sürerken riski azaltın: güvenlik düzeltmelerini geri taşıyan bir dağıtım veya sağlayıcı kullanın, uygulamayı bir web uygulama güvenlik duvarının arkasında tutun, mümkün olan yerlerde erişimi kısıtlayın, kullanılmayan özellikleri ve uç noktaları kaldırın ve yakından izleyin. Bu önlemleri geçici olarak görün ve kesin bir yükseltme tarihi belirleyin.
Sıkça Sorulan Sorular
PHP 8.2'nin desteği ne zaman bitiyor?
PHP 8.2'nin güvenlik desteği 31 Aralık 2026'da sona eriyor. Bu tarihten sonra PHP projesi PHP 8.2 için güvenlik düzeltmesi yayınlamayacak.
PHP 8.2'nin desteği bitince web sitem çalışmayı durdurur mu?
Hayır. Uygulama çalışmaya devam eder, ancak artık PHP projesinden güvenlik düzeltmesi almaz. 31 Aralık 2026'dan sonra keşfedilen her açık, barındırma sağlayıcınız veya Linux dağıtımınız bir düzeltmeyi geri taşımadığı sürece yamasız kalır.
PHP 8.2'den 8.3'e mi, 8.4'e mi, 8.5'e mi geçmeliyim?
Genellikle en iyi seçim PHP 8.4 veya 8.5'tir. PHP 8.3 en küçük adımdır, ancak güvenlik desteği Aralık 2027'de bitiyor. PHP 8.4 2028 sonuna, PHP 8.5 ise 2029 sonuna kadar destekleniyor.
PHP 8.2'den 8.4'e yükseltmek zor mu?
Bakımı iyi yapılmış uygulamalar için genellikle yönetilebilir bir iştir. İşin çoğu bağımlılıkları güncellemek, örtük nullable parametreler gibi kullanımdan kaldırma uyarılarını düzeltmek ve çekirdekten çıkarılan eklentileri değiştirmekten oluşur. Eskimiş paketlere sahip veya test kapsamı düşük eski uygulamalar daha fazla zaman gerektirir.
Laravel PHP 8.4 ve 8.5'i destekliyor mu?
Evet. Laravel 12 PHP 8.2 ile 8.5 arasını, Laravel 13 ise PHP 8.3 ile 8.5 arasını destekliyor. PHP 8.2'deki uygulamalar önce PHP'yi yükseltip ardından Laravel 13'e geçebilir.
PHP 8.2, PHP2Shell'den etkileniyor mu?
Evet. PHP2Shell, 8.2.35'ten önceki PHP 8.2 sürümlerini etkiliyor. PHP 8.2 hâlâ güvenlik desteğinde olduğu için Ekim 2026'da bir düzeltme yayınlandı. 31 Aralık 2026'dan sonra keşfedilecek açıklar böyle bir düzeltme almayacak.
Bir PHP yükseltmesi ne kadar sürer?
Basit ve iyi test edilmiş bir uygulama çoğu zaman birkaç günde yükseltilebilir. Çok sayıda bağımlılığı, özel eklentileri olan veya framework yükseltmesi gerektiren büyük uygulamalar birkaç hafta sürebilir; bu yüzden son tarihten önce başlamak önemlidir.
Sonuç
PHP 8.2'nin desteği 31 Aralık 2026'da sona eriyor ve PHP2Shell'den sonra desteklenmeyen bir PHP çalıştırmanın bedelini görmek kolay. Doğru yaklaşım, tercihen PHP 8.4 veya 8.5'e, Laravel 13 gibi framework yükseltmeleriyle koordineli, otomatik kontroller ve kapsamlı testlerle desteklenen planlı bir yükseltmedir. Uygulamalarınız PHP 8.2 veya daha eski bir sürümde çalışıyorsa ve işi değerlendirmek, güvenle yükseltmek ya da eski bir kod tabanını modernize etmek için yardıma ihtiyacınız varsa, ekibimiz yükseltmeyi işinizi en az şekilde etkileyerek planlayıp hayata geçirebilir.