<?php
define('ABSPATH', dirname(__FILE__));
Uygulamanızın kök klasöründe bulunan bir dosyaya aşağıdaki kodu koyun ve her sayfa yük üzerinde bulunmaktadır.
Daha sonra, sadece her zaman $path = ABSPATH . '/path/to/file.php';
olursa olsun, yerel kopyası bir alt dizine folder
veya değil eğer yapabilirsiniz.
Uygulama zaten her sayfa yük üzerinde bulunan bir dosya varsa, sadece bu dosyada yukarıdaki kodunu bırakın ve bu iş olacak.
Sadece ek eklemek zorunda olabileceğini unutmayın dirname()
Bu dosya bulunduğu yere bağlı olarak çağırır. Eğer webapp kökünden geçmek her dizin için bir tane ekleyin.
: Da webapp /webapp/
bulunan ve "küresel içerir" Örneğin, /webapp/includes/framework/init.php
, daha sonra yukarıda kod gibi modifiye edilmesi gerekmektedir bulunur
define('ABSPATH', dirname(dirname(dirname(__FILE__))));
yani:. 2 ek dirname()
webapp kökünden nedeniyle iki ek klasörler çağırır (includes/framework
)
Clarification
Yukarıdaki kod tek bir dosyada olması gerekiyordu, ve web uygulama yalnızca bir dosyadır. Bu dosya her sayfada yükü dahil edilmesi gerekiyor.
Zaten (Böyle bir yapılandırma dosyası ya da diğer) herhangi bir işlem önce dahil bir dosya varsa, bu dosyada bu kodu kopyalayıp yapıştırabilirsiniz.
The number of dirname()
calls depends on how deep the file you copied and pasted the
code in is relative to the root directory of your web application. For the examples above, assume the root of your web application is represented by ~
.
Eğer ~/abspath.php
içine benim kodu kopyalayıp yapıştırın, o zaman bir dirname()
çağrıyı gerekir.
Eğer ~/includes/abspath.php
içine benim kodu kopyalayıp yapıştırın, daha sonra iki dirname()
aramaları gerekir.
Eğer ~/includes/config/abspath.php
, o zaman gereken üç dirname()
aramaların içine benim kodu kopyalayıp yapıştırın. Şimdi sadece bu nihai konumu diyelim.
~/index.php
, aşağıdaki misiniz:
<?php
require_once('includes/config/abspath.php');
ve ABSPATH
erişebilirsiniz.
~/dir/someOtherPage.php
aşağıdaki misiniz:
<?php
require_once('../includes/config/abspath.php');
ve ABSPATH
erişebilirsiniz.
Ben zaten her sayfada yükü bulunan bir dosya varsa, onun basit sadece yukarıdaki kodu damla söylüyorum nedeni budur. Sadece dirname()
buna göre çağırır miktarını değiştirmek emin olun. Yine, bu kod sadece bir dosya olması içindir.
Sonra URL yolunu alabilirim, DAN DOCUMENT_ROOT
kaldırarak onun basit bir mesele ABSPATH
:
$docRoot = rtrim($_SERVER['DOCUMENT_ROOT'], '/');
define('RELADDR', substr(ABSPATH, strlen($docRoot));