Bütün bir site için tek bir PHP komut dosyası kullanarak

4 Cevap php

Ben yerine birden fazla, ayrı olanları sahip, tek bir dosya içine tüm siteler komut koyarak (başkalarının milyonlarca olasılıkla zaten vardı ki), bugün bir fikrim yoktu. Bir formu göndermek, aynı zamanda onu işlemek dosyasının hangi fonksiyonu temsil edecek 'eylem' gibi bir şey denilen gizli bir alan olacaktır.

Ben Kod Ateşleyici ve CakePHP gibi şeyler ayrı / kodunu düzenlemenize yardımcı olan var olduğunu biliyoruz.

Bu güvenlik, hız ve bakım açısından iyi ya da kötü bir fikir mi?

Bu gibi şeyler zaten ben farkında değilim var mı?

4 Cevap

Bunu birçok forum vardır. Şahsen ben size dosyasında bir hata yaparsanız bunu düzeltmek kadar, tüm site bozuldu başlıca nedeni, bunu sevmiyorum.

Her parçanın ayrılmasını ister, ama ben onun artı vardır sanırım.

Kolayca bir güncelleştirme için sitenin bir bölümünü devre dışı olamaz gibi, bakım için kötü olasıdır.

Hız: Ben dürüst olmak gerekirse emin değilim.

Güvenlik: Siz aynı güvenlik ayarlarını gerçekleştirmek ama sadece bir dosya için bir güvenlik denetimi ekleme ve daha sonra tüm sayfalarda o dosyaya dahil olabilir.

Eğer komut önbelleğe değilseniz, tek bir dosya içinde her şey daha az disk G / Ç anlamına gelir ve genellikle beri, disk I / O pahalı bir işlem olduğu, bu muhtemelen önemli bir yararı olabilir.

Şey, bu madde için yeterli trafik alıyorsanız zaman, zaten muhtemelen önbelleği ile gidiş daha iyi olduğunu. Ben bunu bant genişliği bir sorun değil bir hosting ortamında sıkışmış özel durumlarda olsa da, bazı sınırlı mantıklı olabilir varsayalım.

Bakım ve güvenlik: Bir programcı kendi kafasının içine sığabilecek (ve bir bilgisayar hafızasında özenle yönetebilirsiniz) küçük kod ayrılmaz parçaları üzerinden yazılım oluştururken hemen hemen her zaman büyük bir ol 'dosyasından daha iyi bir fikir. Eğer cehennem diğer Devs kod ile tamircilik için yapmak istedim, büyük ol 'dosya bir şaşırtmaca düzeninin bir parçası olarak yeterince iyi hizmet olabilir rağmen. ;)

I / O, o zaman ne yapmak istediğiniz ekstra bir disk deneyin ve sıkmak için tek dosya yaklaşımı kullanarak nedense Eğer bir dizi gerçek geliştirme çalışmaları yaptığım yerde, bir inşa sürecini oluşturmak olduğunu kırık- ayrık dosyalar üzerinden ve yayınlanan make veya ant sizin tek bir dosya oluşturmak için komutu gibi.

Nokta nedir? Bu sadece bakımı daha zor yapmak için gidiyor. Eğer bir sabit zaman birden fazla dosya yönetmek yaşıyorsanız, size daha iyi bir metin editörü / IDE bulma içine zaman yatırım ve Not Defteri'ni kullanarak ya da ne olursa olsun ilk etapta bu kadar zor yapıyor durdurmak gerekir!

Birçok PHP çerçeveler Front Controller tasarım güveniyor: bir tek küçük bir PHP script tüm istekleri için iniş noktası olarak hizmet vermektedir. Istek argümanların ışığında, ön kontrolör diğer PHP kodu çağırır.

Diğer insanların yorumladı var gibi ancak tek bir dosyada siteniz için all kodunu saklamak, pratik değildir.