mutlak veya göreceli bir yol kullanabilirsiniz?

4 Cevap

i tüm sabitleri var burada benim config.php i mutlak bir yol PATH ayarlayın.

ama bu benim uygulama klasörünü taşıdığınızda ben bu yolu değiştirmek zorunda olduğu anlamına gelir.

i üretim ve geliştirme klasörü arasında benim uygulamayı hareket zaman onun daha iyi bir göreli yolunu ayarlamak için, bu şekilde, ben bunu değiştirmek zorunda değilsin eğer ben merak.

klasörler arasında hareket ederken siz nasıl yaparsınız?

4 Cevap

Bulduğum en iyi yolu, şunları yapmaktır:

define("PATH", realpath(dirname(__FILE__)));

Bu size geçerli dosyanın dizin verir. Eğer ayarları / önyükleme / init dosyasında Bunu yaparsanız, size uygulama için kullanılabilir olacak ve herhangi bir dosya sistemi için çalışacaktır.

__FILE__ senin arkadaşın.

define('BASE_PATH', dirname(realpath(__FILE__)));

Bu komut daha taşınabilir hale getirecek.

Böyle bir dosyayı dahil

include BASE_PATH . 'includes/header.php';

Bunu çözmek için üç şey:

  1. İlk geçerli dosyaya göreli yolları kullanmak ve kullanarak bir şeyler eklemek için dirname(__FILE__).

  2. İkinci dahil bir yükleyicinin kullanmaktır ki, tüm pages yükü. Genellikle bir akraba çağrı yoluyla, dahil dizini bulmak için: Bu dosya bir sorumluluğu vardır. Yani bu uzun göreceli ilişkisi kalır gibi, o değişmesine gerek yoktur.

  3. Ben de installation yerine codebase ait özel ayarlar desteklemek istiyorum. Bu içeren mekanizma tarafından yapılır ve kod üzerinde sunucu için özel olacak bir kaç ayarları geçersiz kılar.