2012-09-04 17 views
12

Olası Çoğalt:
Is there a way to program 100% object-oriented in PHP?Java'da 'public static main (String [] args) `için bir PHP karşılığı var mı?

böyle bir şey olmazdı başarmaya çalışıyorum ne

:

Yani
<?php 
     //index.php 
     class Site{ 
      public static function main(){ 
       // starts all the processing of the site 
      } 
     } 
?> 

birisi sitenin index.php siteyi ziyaret ne zaman olacak o Sınıf dışında herhangi bir kod olmaksızın başlayın.

Evet, sınıfların otomatik yüklenmesini işlemek için __autoload veya spl_autoload_register kullanabileceğimi biliyorum, ancak bu muhtemelen büyük olasılıkla sınıfa eklenmesi gerekir.

Bunun mümkün olduğuna dair şüphelerim var ama bunun neden mümkün olduğunu bilmiyorum.

+0

Neden php içinde bir giriş noktasına ihtiyacınız var ??? – perilbrain

+0

@deceze evet, sorgumun gereksinimlerini karşılayabilir gibi görünüyor, ancak aradığım sıklıkta sonuçlarda hiç görünmedi. Aramamda yanlış bilgileri kullanıyor olabilirdim. – JRSofty

+0

Evet var ... public function __construct() {/ * Nesne yapısında bir şey yap * /} – Matth3w

cevap

18

sayılı

Java'nın giriş noktası main yöntem olarak tanımlanır. PHP'nin giriş noktası, çalıştırılan ilk dosyadaki ilk satır olarak tanımlanır. ,'un "prosedürel" kodla başlayacaktır.

+0

Doğrudan yanıt için teşekkürler. Son iki gündür kafamda bu soruya olası doğrudan cevapları ararken kafa karıştırıyorum. Bir çoğaltma bulduğunuz için, SO arama kriterlerimle daha fazla çalışmaya ihtiyacım var. – JRSofty

1

Site sınıfınızı bu şekilde yazabilirsiniz ve bu sınıfı her şeyi yapılandırın, ancak sınıfı başlatmak için bir giriş dosyasına ihtiyacınız olabilir. Sitenizi dizin dosyanızda bir satır ile 'açabilirsiniz'. Büyük bir esneklik inhibitörü gibi görünmüyor.

Yani, cevap hayır :)

0

php ile kutunun dışında böyle bir kavram yoktur olurdu. Kullanıcıyı istediğiniz dosyaya yönlendirecek bir .htaccess dosyasında index.php ya da bir şey olması gerekir, ancak sınıf her zaman kod tarafından izlenmesi gerekir

-1

Bunu çok kolay bir şekilde başarabilirsiniz bij size sitede bir .htaccess kullanarak:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 

Kişisel index.php wil sonra Al işlemini yapmak. Bir prosedür kodu 1 satırı ile, bir sınıf oluşturabilir ve oradan devam edebilirsiniz.

<?php 
     //index.php 
     class Site{ 
      public static function main(){ 
       // starts all the processing of the site 
      } 
     } 

     Site::main() 
?> 

Bkz. tutorial/blog.

+0

Üzgünüm @JvdBerg, aradığım şey değil. Örneğiniz hala kaçınmaya çalıştığım site: main() 'ı gösterir. Şu an için bildiğim PHP'yi kullanmak mümkün değil. – JRSofty

İlgili konular