PHP Conference Nagoya 2025

NYP Değişiklik Güncesi

PHP NYP modelinde yaplan değişiklikler burada sıralanmıştır. Bunlarla ilgili açıklamalar ve diğer bilgiler NYP belgeleri içindedir.

Sürüm: Açıklama
8.1.0 Eklendi: Sınıf sabitlerinin final olarak tanımlanması artık destekleniyor. Ayrıca, arayüz sabitleri artık öntanımlı olarak geçersiz kılınabiliyor.
8.0.0 Eklendi: null olabilen nesne yöntem ve özelliklerine erişim için Güvenli Null İşleci ?-> desteği.
7.4.0 Değişti: __toString() içinde bir istisna yavrulamak artık mümkün.
7.4.0 Eklendi: Sınırlı dönüş türü farklılığı ve bağımsız değişken türü farklılığı desteği. Tam farklılık desteği yalnızca otomatik yükleme kullanılıyorsa kullanılabilir. Tek bir dosyanın içinde yalnızca dönüşümlü olmayan tür gönderimleri mümkündür.
7.4.0 Eklendi: Artık sınıf özelliklerini yazmak mümkün.
7.3.0 Uyumsuzluk: Traversable bağımsız değişkenlerine int olmayan anahtarlarla ulaşılması artık desteklenmiyor. Böyle bir davranış amaçlanmadığından kaldırıldı.
7.3.0 Uyumsuzluk: Önceki sürümlerde statik özellikleri bir gönderim atayarak ayırmak mümkündü. Bu kaldırıldı.
7.3.0 Değişti: instanceof işleci, sonucun daima false olduğu durumlarda, artık, ilk terim olarak değişmezlere izin veriyor.
7.2.0 Kullanımdan kalktı: spl_autoload_register() yararına __autoload() yöntemi kullanımdan kaldırıldı.
7.2.0 Değişti: object bir isim olarak sınıf, arayüz ve niteliklerin isimlendirilmesinde artık kullanılamıyor.
7.2.0 Değişti: İsim alanları için grup kullanım sözdiziminde arda bir virgül eklenebiliyor.
7.2.0 Değişti: Bağımsız değişken türü genişletmesi. Geçersiz kılınmış yöntemlerdeki ve arayüz gerçekleştirimlerindeki bağımsız değişken türleri artık çıkarıldı.
7.2.0 Değişti: Soyut bir sınıf başka bir soyut sınıfa genişletildiğinde soyut yöntemler artık geçersiz kılınabiliyor.
7.1.0 Değişti: void ve iterable bir isim olarak sınıf, arayüz ve niteliklerin isimlendirilmesinde artık kullanılamıyor.
7.1.0 Eklendi: Sınıf sabitlerinin görünürlüğünü belirtmek artık mümkün.
7.0.0 Kullanımdan kalktı: Statik yöntem çağrıları artık statik bildirilemiyor.
7.0.0 Kullanımdan kalktı: PHP 4 tarzı kurucu. Yani, tanımlandıkları sınıfın ismini alan yöntemler.
7.0.0 Eklendi: Gruplu use bildirimi: Aynı isim alanından ithal edilmiş sınıf, işlev ve sabitler tek bir use deyimi içinde birlikte gruplanabiliyor.
7.0.0 Eklendi: new class üzerinden anonim sınıf desteği eklendi.
7.0.0 Uyumsuzluk: Traversable olmayan nesneler üzerinden yineleme, artık, dizileri gönderimleri üzerinden yinelemeyle aynı davranış kalıbına sahip.
7.0.0 Değişti: Kullanılan iki niteliğin (uyumlu) özelliklerini tanımlamak artık bir hatayı tetiklemiyor.
5.6.0 Eklendi: __debugInfo() yöntemi.
5.5.0 Eklendi: ::class sihirli sabiti.
5.5.0 Eklendi: İstisnaları işlemek için finally bloğu.
5.4.0 Eklendi: Nitelikler.
5.4.0 Değişti: Eğer bir abstract sınıfı kurucu için bir imza tanımlıyorsa, o imza artık yürürlüğe konuyor.
5.3.3 Değişti: Bir isim alanlı sınıf adının son elemanı ile aynı isimdeki yöntemler artık kurucu olarak ele alınmıyor. Bu değişiklik isim alanlı olmayan sınıfları etkilemez.
5.3.0 Değişti: Prototipte öntanımlı değerlere sahip olan arayüzleri yöntemlerle gerçekleyen sınıfların artık arayüzün öntanımlı değeriyle eşleşmesi gerekmiyor.
5.3.0 Değişti: Sınıflara bir değişken kullanarak başvurmak artık mümkün (örn., echo $classname::constant;). Değişkenin değeri bir anahtar sözcük olmamalıdır (örn., self, parent veya static).
5.3.0 Değişti: Sihirli aşırı yükleme yöntemleri static bildirilirse E_WARNING seviyesinde bir hata oluşur.
5.3.0 Değişti: 5.3.0 öncesinde, __autoload() işlevinde yavrulanan istisnalar catch bloğunda yakalanamaz ve ölümcül hata oluşur. __autoload işlevinde yavrulanmayan istisnalar catch bloğunda tek bir önlemle yakalanabilir. Özel bir istisna yavrulanıyorsa bu özel istisna sınıfı mevcut olmalıdır. __autoload işlevi özel istisna sınıfını otomatik yüklemek için ardışık olarak kullanılabilir.
5.3.0 Eklendi: __callStatic yöntemi.
5.3.0 Eklendi: Sınıf const ve özellik tanımları için yorumlu ve yorumsuz metin desteği. Yorumlu değerlerin çift tırnaklı dizgelerin uyduğu kurallara uyması gerektiğini unutmayın (örn, değişken olmayanların içinde).
5.3.0 Eklendi: Statik İçselleştirim.
5.3.0 Eklendi: __invoke() yöntemi.
5.2.0 Değişti: __toString() yöntemi sadece echo veya print ile doğrudan birleştirilip çağrılabilirdi. Artık, herhangi bir string bağlamında (örn, %s seçenekli printf() içinde) çağrılabilir fakat diğer türlerin bağlamlarında (örn, %d seçeneği ile) çağrılamaz. PHP 5.2.0 itibariyle, nesnelerin __toString yöntemi olmaksızın dizgeye dönüştürülmesi E_RECOVERABLE_ERROR seviyesinde bir hataya sebep olur. PHP 5.2.0'dan itibaren, object türünü __toString yöntemi olmaksızın string türüne dönüştürmek E_RECOVERABLE_ERROR seviyesinde bir hatayı tetiklemektedir.
5.1.3 Değişti: PHP 5 öcesinde, var kullanımı önerilmezdi ve E_STRICT seviyesinde bir hataya sebep olurdu. Artık, önerilmeme durumu ortadan kalktığından bir hataya sebep olmuyor.
5.1.0 Değişti: __set_state() statik yöntemi artık var_export() ile ihracedilen sınıflar için çağrılabiliyor.
5.1.0 Eklendi: __isset() ve __unset() yöntemi.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top