Eğer işleyen veya bir php dosya içinde dahil olmak üzere tercih edersiniz?

8 Cevap php

Nasıl php kodları yönetirim? Eğer bir php dosya içinde işleyen veya "ham kod" büyük bloklar dahil tercih edersiniz?

Edit: - Sadece fonksiyonları ve dahil herhangi bir ad ve sınıfları kullanmak yok gibi Aslında, benim kod, oldukça pis. Ben ^ ^ yukarı sınıfları bakmak zorundadır.

8 Cevap

Eğer php sınıfları kullanıyorsanız, bu kendisini dışarı sıralamak. Eğer değilse, o zaman öğrenmek gerektiğini dışında, kabul edilebilir bir cevap vermek gerçekten zor. Ben sınıfları olmadan iki şekilde yapılır gördüm tüm php kod hızla dağınık haline geldi.

Ben OOP gitmek için yol olduğunu kabul. Büyük kod katı bloklar bakım için kabus vardır. Kesinlikle gitmek için yolu değildir. Eğer birbirleri ile etkileşim ve kendi kolayca maintanable olan küçük bloklar halinde kod bölmek gerekir.

PHP programlama için kullanılan zaman ben yalnızca gerektiğinde onları yüklemek için, sayfaların en dahil etmek ortak bir dosyaya grup, genel yarar fonksiyonları için sevdim ve özel dosyaları grup dersleri.

Use them as you need them. I use include for chunks of big code doing processing, and functions for "utility" functions. Sometines i use includes within function also... it really depends on how clean you like your code.

Içerir .. daha birçok PHP modülünden fopen (), ve bu bütün script yürütülmesine doewn yavaş anlamına geldiğini düşünüyorum bu yüzden denemek ve çok olsa da içerir koymayın.

Ben genellikle mantık fonksiyonlar / sınıfları kullanmak ve ekran için içerir. Ben bir kontrol böyle bir şey ile sonuna kadar ...

case 'widgetlist':
  $widgets = $DAO->getWidgets();   //get some query
  include('view/showWidgets.php'); //assume a global $widgets variable
  break;

Ben daha kolay bir HTML / CSS tasarımcısı vermek bir yerine görüntüleyen bir işlev çağrısı daha eklemek için bulduk. Aşağı tarafı ben oldukça çok daha güvenlidir argümanlar daha eklemeyi değişkenler geçmek globalleri güveniyor olmasıdır.

(Onlar en azından dahil kadar) ben ad alanı olarak doğru önek ile, ayrı dosyalarda sınıfları olun. Ben de ad etkisi için "statik sınıflar" statik yöntemler gibi işlevleri koydu.

I use autoload to include the files so I don't have to write a hundred includes. Save My_Example_Class as {lib}/My/Example/Class.php

Ben üzerinde çalışıyorum şey tüm küresel işlev ve veritabanı kurulum malzeme içeren her sayfanın üst kısmında bir yer dosyası vardır. Olduğu gibi çalışır ama büyük bir yumru her şeyi ile herhangi bir test yapmak için tamamen pratik çünkü ben şimdi, ayrı dosyalar halinde işlevlerini taşınıyorum.

PHP sınıf çağrıları önünü kullanabileceğiniz bir __ autoLoad () sihirli işlevi vardır. Sınıfı henüz yoksa, kurulum doğru sınıf kodu için gidip bakmak için bazı basit kod dahil etmek olabilir. Daha sonra normal bir şekilde yürütmeye devam edecektir.