IHS Blog

PHP 7.0 Hız ve Güvenliği Arttırıyor

PHP 7.0

PHP 7.0 ve Zend Engine 3’ün çıkmasıyla bu popüler sunucu tarafı kod dili hızlı ve modern bir hal alıyor.

PHP’nin yeni sürümü yeni özellikleri, fazlasıyla ihtiyaç duyduğu optimizasyonları ve Zend Engine destekli hız artışıyla nihayet piyasaya çıktı. Öte yandan, PHP 7.0’da kod uyumunu bozan, miadı dolmuş özellikler artık desteklenmiyor.

Halen PHP 5.6 kullanmakta olanlar PHP 6.0’ın nereye gittiğini sorabilir. O versiyon her yere Unicode (UTF-16) desteği eklemek üzere bir test olarak piyasaya sürülmüş, fakat geliştirme aşamasındaki bazı zorluklar ve performansı ciddi seviyede düşürmesi yüzünden pek rağbet görmemişti.

PHP 7.0’daki yeni özellikler

PHP 7.0’daki yeni özellikler arasında skaler ve sonuç tipi bildirimler, isset() içeren bir üçlü ifade kullanmak için null coalesce operatörü ve iki ifadeyi karşılaştırmak için ancak ve ancak < = > operatörü var. Her iki operatör de belirli değerlendirmeler yapmak için gereken kod miktarını ciddi oranda azaltacak.  

Ayrıca, daha fazla güvenlik sağlamak adına unserialize() belirli izin verilebilir sınıfları mümkün kılıyor, session_start() artık oturum konfigürasyonu direktiflerinin php.ini içinde geçersiz hale getirebiliyor. Bunun yanı sıra kriptografik anlamda güvenli tamsayılar ve komut dizileri oluşturmak için iki yeni özellik daha getirilmiş. Daha fazla güvenilirlik için PHP’nin yorumlanış biçimini biraz değiştiren ve değerlendirmelerin artık hep soldan sağa doğru yapıldığı uniform değişken sentaksı kullanılmaya başlamış.

Performans büyük ölçüde artıyor

PHP 7.0 performans bakımından PHP 5.6’ya göre çok daha iyi. Aynı zamanda popülaritesi giderek artan HHVM (HipHop Virtual Machine) uygulamasına da rakip olacak. Facebook’un HHVM uygulaması 2011 yılında PHP’nin referans uygulaması olan Zend Engine 2.x’e rakip olarak çıkmıştı. HHVM bir JIT derleyici olarak çalışarak PHP kodunu HipHop bayt koduna, oradan da x86-64 makine koduna çevriliyor. PHP 7.0 ile birlikte Zend Engine de 3.0 olarak güncellenmiş olacak.  

PHP wikisi tarafından yapılan karşılaştırmalarda PHP 5.6 ile 7.0 arasında WordPress 4.1’de %129’luk bir hız artışı, SugarCRM’de %127’lik bir hız artışı, Drupal 8.0.0-beta11’de ise %76’lık bir hız artışı olduğu görüldü.

PHP 7.0’daki gelişimler HHVM ile karşılaştırma olarak pek telaffuz edilmiyor ama PHP 7.0 WordPress 4.1’de yaklaşık %1, SugarCRM’de %42.7, Drupal’da ise %23.4 daha hızlı Ayrıca, Linux karşılaştırma sitesi Phoronix’teki sonuçlara göre PHP 7.0 PHP 5.6’dan yaklaşık üç kat, HHVM’den ise iki kat daha hızlı, fakat RAM kullanımı HHVM’den biraz daha fazla.

Miadı dolmuş özellikler ve temizleme kodu artık yok

ASP tarzı etiketler ve <script language=php>  etiketi kaldırılmış. Ayrıca miadını PHP 5.5’te doldurmuş olan MySQL eklentisi de kaldırılmış.

Diğer kötü programlama örnekleri de artık yeni sürümde bulunmuyor. Örneğin, artık aynı isimde iki veya daha fazla fonksiyon parametresi tanımlamak mümkün değil. Benzer şekilde, bir switch ifadesinde iki veya daha fazla varsayılan blok tanımlayamıyorsunuz.

Yapılan değişiklerle ilgili daha fazla bilgi edinmek isteyenler için PHP Kılavuzu‘nda PHP 7.0’a geçiş konusunda kapsamlı bilgiler bulunuyor.

Exit mobile version