bir kök ile dizinleri sizin yöntem nedir

2 Cevap php

ive kadar klasörleri ve ayarlar dosyaları gitmek gibi bu örgütlenme düzeyine sahip bir MVC yarattı.

+[admin]
-[js]
-[css]
-[images]
-[classes]
--list of php classes
-[includes]
--config.php (includes db connection str
--functions.php (php functions)



--root---

[js]
[css]
[images]
[classes]
--list of php classes
-[includes]
--config.php (includes db connection str
--functions.php (php functions)


Eğer yönetim bölümü sınıflar, fonksiyonlar, ve bir db yapılandırma dosyasının kendi klasörleri görebileceğiniz gibi ben bu yapı ile sahip sorundur.

daha sonra diğer sayfalar için kök (admin olarak aynı olan) sınıflar, fonksiyonlar, ve db bağlantısı için sayfaları kendi belirledi

ive yönetici bölümü ve kök sayfaları tüm hisse ancak bunun sonucu böyle bir örümcek ağı olarak içeren bir karmaşa olur böylece içeren için tek sınıflar için klasör ve başka olan ve denedik.

ive de dahil olmak üzere bir yöntemdir denenmiş

include_once (dirname (FILE). / dizin / ...) ve bu ne yapar ise geçerli sayfa işe alışkanlık haline bir seviye yukarı bir dosya eklemek için çalışıyorum bir klasör ve im iç im . ve bunun yerine ana kök dizini kullanarak aynı zamanda iç klasör im içerir. böylece herhangi iyi kullanmak gelmiyor.

so if this was my root: d:/wamp/www/website/ and i was including something from the main root into a file inside of a directory named functions the dirname(FILE) would actually have a value of d:\wamp\www\website\functions\

nedir ne oluyor anlamaya çalışıyorum hataların bir karmaşa içine almak yanmadan dosyaları da dahil olmak üzere iyi bir yöntemdir.

teşekkürler

2 Cevap

Bu hemen hemen tüm özel web sitesi düzeni nasıl.

  • [site] this directory only has one file index.php and is the domain root
    • [Js]
    • [Css]
    • [Resimler]
  • [Model]
  • [View]
  • [Kontrolörü]
  • [Lib] - 3. parti kodu, PHPMailer ve bu
  • [Config]
  • [admin]
    • [Js]
    • [Css]
    • [Resimler]
    • [Model]
    • [View]
    • [Kontrolörü]

Ben dosyaları da dahil olmak üzere __autoload kullanın. Performansını optimize etmek ve hakkında içerir endişelenmenize gerek yok bir kaç yolu vardır.

Erişim ve kamu yönetici erişimi ikisi tarafından kullanılan alır jQuery gibi şeyler sitesi / js gider ben sadece admin altında yönetici belirli bir kod koymak.

Böyle bir şey deneyin, ve merkezi bir yapılandırma dosyasında tanımlamak.

Bu daha sonra eklenmiş uygun dosya yolları ile, ROOT_CLASSES ve ADMIN_CLASSES gibi her klasör için muhtemelen bir birkaç diğer sabitleri tanımlamak, tek bir bütün yolları için tek bir sabit verecektir. Sonra şeyler katmak için, sadece gerçekten. Sadece sabiti ile tanımlamak ve dosya adını ekleyin.


define("ABS_PATH", "/path/to/upper/most/directory"); // Manual

// define other paths...
define("ADMIN_CLASSES", ABS_PATH . "/admin/classes/");
define("ROOT_CLASSES", ABS_PATH . "/root/classes/");

include(ROOT_CLASSES."/myclass.php");

Bu config dosyasında ise, diğer bildirimleri ile birlikte, daha sonra bunları tanımlayarak konusunda endişelenmenize gerek olmayacaktır.