Statement on glibc/iconv Vulnerability

Tür Sistemi

PHP, davranışsal alt tür ilişkileri ile güçlendirilmiş sembolik bir tür sistemi kullanır. Alt türlerle ilişkiler derleme sırasında sınanırken türlerin doğrulanması çalışma anında dinamik olarak gerçekleştirilir.

PHP'nin tür sistemi, daha karmaşık türler oluşturmak için bir araya getirilebilecek çeşitli temel türleri destekler. Bu türlerden bazıları tür bildirimleri olarak yazılabilir.

Temel türler

Bazı temel türler, dille sıkı bir şekilde bütünleşmiş yerleşik türler olup kullanıcı tanımlı türlerle yeniden türetilemez.

Temel türler:

Birleşim türleri

Temel türleri birleşik türler halinde birleştirmek mümkündür. PHP, türlerin aşağıdaki şekillerde birleştirilmesine izin verir:

  • Sınıf türlerinin (arayüz ve sınıf isimlerinin) kesişimi.
  • Tür birleşimleri.

Tür kesişimleri (& ile birleşim)

Tür kesişiminde, tek bir sınıf yerine birden çok sınıf türü bildirimine karşılık gelen değerler kabul edilir. Kesişimi oluşturan tekil türler & simgesi ile birleştirilir. Örneğin, T, U ve V türlerinden oluşan bir tür kesişimi T&U&V biçeminde yazılır.

Bileşik türler (| ile birleşim)

Bileşik tür (union), tek bir değer yerine birden fazla türde değer kabul eder. Bileşik türü oluşturan tekil türler | simgesi ile birleştirilir. Örneğin, T, U ve V türlerinden oluşan bir bileşik tür T|U|V biçeminde yazılır. Türlerden biri kesişim içeriyorsa, kesişimin yaylı ayraçlar arasına alınması gerekir: T|(X&Y).

Tür takma adları

PHP iki tür-takma-adı destekler: object|resource|array|string|float|int|bool|null karşılığı olarak mixed ve Traversable|array karşılığı olarak iterable.

Bilginize: PHP kullanıcı tanımlı tür takma adlarını desteklemez.

add a note

User Contributed Notes

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