PHP tüm projede yüklü olacak bir dosyada sizin içeren tüm nasıl bildirildiğini

2 Cevap php

Hello i'm working on a project but, i'm sick of loading all the libraries in every single page

Benim proje dizinleri böyle bir şey vardır

|---x (( PHP PAGES ))
  |--- x1.php (( PHP FILE ))
  |--- x2.php (( PHP FILE ))
|---y (( PHP PAGES ))
  |--- y1.php (( PHP FILE ))
  |--- y2.php (( PHP FILE ))
|---includes (( LIBRARIES ))
a.php (( PHP FILE ))
b.php (( PHP FILE ))
c.php (( PHP FILE ))

i tek bir dosyada tüm kütüphaneler yüklemek ve tüm sayfalarda bu dosyayı yüklemek için çalıştı, ama sorun bu gibi bir şey olacak x1.php örneğin yükleme kütüphaneler için gibi dizinleri gelir ".. / / include", ama A.php yükleme sadece ihtiyacı "include /" i ulaşmak için bir yol olduğunu biliyorum "içeren" isteği geliyor ama ben bunu yapmak için nasıl hiçbir ipucu var nerede olursa olsun dizin.

Teşekkürler

2 Cevap

Include olarak her tek dosya yüklerken istenmeyen kabartmak ekleyin ve muhtemelen sitenizi yavaşlatacaktır. Ne deneyebilirsiniz sınıf autoloading olduğunu: http://www.php.net/manual/en/language.oop5.autoload.php

Bu dağılım için ihtiyaç biryere ama sadece gerçekten ihtiyacınız dosyaları dahil edilecektir içerir ortadan kaldırır.

Sorunuzun cevabı bir include_path ayarlamaktır. Varsayılan olarak, PHP çağıran dosyanın aynı dizinde bulunan dosyaları arar, ama ayarladığınız takdirde, bir include_path yerine oraya bakacağız.

Ancak, sınıf autoloading ve __autoload() function uzun vadede daha iyi, bu yüzden e4c5 cevabı ile gitmek.