PHP parse_ini_file () performans?

4 Cevap php

Ben bir. Ini dosyasında bazı insanlar mağaza ayarlarını bilmek ve PHP parse_ini_file() ile değerleri olsun. Testleri çalışan olmadan, performansı merak ediyorum.

Ayar bir ini dosyası içinde ise opcode önbellek şeyler bu tip herhangi bir önbelleğe olmadığını biliyor musunuz?

4 Cevap

Buna göre, blog post (note broken link: see edit below) (English Translation)

Yavaş en hızlı Gönderen:

  1. Tefrika diziler
  2. Düz PHP kodu
  3. INI dosyaları
  4. XML dosyaları
  5. YAML dosya

EDIT (08/02/2012)

APC veya diğer hızlandırıcı sunucuda varsa düz PHP dosyaları nedeniyle sadece bir kez ayrıştırılır ve daha sonra kullanmak üzere bellekte tutulacak bu gerçeği hızlı olacaktır.

Edit (23/04/2014)

Özgün kaynak linki şimdi bozuldu. Ancak bu belki geçici bir sorun, yazar onun blog çerçevesini göç / güncelleme yaparken. Sonradan kırık kalırsa linki kaldırın lütfen.

Sorunun diğer bölümü için: opcode önbellek önbelleklerini ini dosyaları varsa. Yazma zamanda, benim sürümü PHP 5.3.5 ile, APC önbellek otomatik başına bunu yapmaz, ancak aşağıdaki gibi bir işlevi ekleyerek ini dosyaları APC tarafından önbelleğe emin olun ve ini dosyalarını ayrıştırma için kullanabiliriz :

function parse_ini_file_ext ($file, $sections = null) {
    ob_start();
    include $file;
    $str = ob_get_contents();
    ob_end_clean();
    return parse_ini_string($str, $sections);
}

Sonra ini dosyaları bu da doğrudan ini dosyaları okuma daha hızlı basit bir microtime kriter ile APC.Measured tarafından önbelleğe alınır.

parse_ini_file yerleşik işlev C Bu oldukça hızlı hale uygulanmaktadır.