Cách dễ nhất là nên sử dụng pathes tuyệt đối/URL.
Đối với các URL, xác định một hằng số/biến nơi nào đó, trỏ đến thư mục gốc của ứng dụng của bạn, như:
define('ROOT_URL', 'http://www.example.com');
hoặc
$root_url = 'http://www.example.com';
Và sử dụng nó trong mọi liên kết, như:
<a href="{$root_url}/my-page.php">blah</a>
Bằng cách này, lúc nào cũng OK (và ngày bạn cài đặt dự án của bạn trên máy chủ khác, hoặc trong một subdirector y, bạn chỉ có một hằng số/biến để sửa đổi và mọi thứ vẫn hoạt động)
Để bao gồm/yêu cầu, luôn luôn sử dụng đường dẫn tuyệt đối; một giải pháp là sử dụng dirname
, như thế này:
include dirname(__FILE__) . '/my_file.php';
include dirname(__FILE__) . '/../my-other-file.php';
__FILE__
là tập tin hiện tại, nơi mà bạn đang viết dòng này; dirname
lấy đường dẫn (đường dẫn đầy đủ) đến thư mục chứa tệp đó.
Với điều đó, bạn không bao giờ phải lo lắng về đường dẫn tương đối của tệp của mình.
Nguồn
2009-07-24 22:27:14
ah, nhưng làm cách nào để tìm hiểu đường dẫn này nên là gì? –
Bạn có thể muốn xem thông tin PHP về biến máy chủ hoặc tự xác định. Nếu bạn tự xác định, hãy đảm bảo đó là thư mục mà TẤT CẢ các tệp nằm trong đó. –