Dikkate uygulama dizini alır PHP vuruşu sayfa

5 Cevap php

Ben bir proje için kaza-öğrenme PHP ve ben yapmak için aptalca sorular bir ton var. İlk şöyledir. Ben böyle bir yapıya sahiptir:

  • index.php
  • header.php
  • images /
  • data
    • data.php

Şimdi, sorun ben data.php dosyasında header.php dosyasını dahil etmek istiyor. Bu bir sorundur.

Ben sorun header.php göreli şekilde görüntüler klasörüne bir bağlantı olmasıdır. Yani, görüntüler yük olmayacak.

Daha da kötüsü, bu yapının belirli bir takma ad altında, bu yüzden sadece görüntüye bağlantı başına bir append / olamaz.

Ben ne gerek, sanırım, komut uygulama yolunu almak için bir yoldur. Ben dahil nerede önemsemeden görüntüleri için başvurabileceğiniz bu şekilde yapılır.

Nasıl PHP bu yol alabilirim?

5 Cevap

Gibi gibi dosyaya dahil deneyin:

<?php
    include($_SERVER['DOCUMENT_ROOT'].'/data/data.php/');
?>

DOCUMENT_ROOT sitenizin web sunucusunda bulunan kök klasörün yolunu dönecektir.

Birçok kişi böyle bir şey kullanın. dirname(__FILE__) betik dizini dönecektir. Sonra dahil script göreli yolu olduğunu bağlamak.

require(realpath(dirname(__FILE__).'/lib/Database.php'));

$_SERVER['PATH_TRANSLATED'] bir göz atın

$ New_path getcwd () sonucu için mutlak kök klasöründen size tüm yol almak nereye set_include_path (get_include_path (). PATH_SEPARATOR. $ New_path) kullanın.

Bu yüzden kod data / her dosya için tekrar edilmez ana dosyasının yolunu eklemek içerir emin olun. Bu da yine aynı konu ile rahatsız değil emin olun olacaktır.

src="/images/yourimage.gif" olarak görüntüyü bağlama sizi engelleyen bir şey var: Tüm iyi bir PHP cevaplar zaten atılıyor, ben ona başka bir yol aramak öneririm? Bu şekilde görüntü sen onu aramak olursa olsun yükleyecektir.