Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Definiowanie ścieżek i łatwiejszy dostęp

PHP  Założony przez  Patryk Stefański.

Cześć, tak sobie koduje i zauważyłem, że ciężko się piszę wszelakie linki w php i zastanawiałem się czy można to jakoś uprościć, żeby było dobrze po stronie localhost jak i po vps/hostingu
Chodzi mi głównie o linki
require_once(dirname(__DIR__)."/include/functions.php");
$link GetCurrentPage();
if(
$link == NULL) require_once(dirname(__DIR__).'/pages/home.php');
elseif(
$link == 'rules') require_once(dirname(__DIR__).'/pages/rules.php'); 
Czy można to ukrócić w następujący sposób
define('INCLUDE_PATH'dirname(__DIR__)."/include/");
define('SYSTEM_PATH'dirname(__DIR__)."/system/");
define('PAGES_PATH'dirname(__DIR__)."/pages/"); 
i zastosować to w następujący sposób

require_once INCLUDE_PATH."functions.php";
$link GetCurrentPage();
if(
$link == NULL) require_once PAGES_PATH.'home.php';
elseif(
$link == 'rules') require_once PAGES_PATH.'rules.php';
etc... 

I czy jest to zgodne ze standardami ?
Staram się przepisać cały kod, który pisałem wcześniej na obiektywny z PDO
Robić można wiele rzeczyi na wiele sposobów, ale jak już robić to warto porządnie :-)
Przepisywanie kodu na obiektowy, jednocześnie zachowując starą architekturę mija się z celem, zapomnij o globalnym pliku functions.php.

Ciężko polecać coś konkretnego bez pełnego wglądu w kod, ale jeśli już lecisz na kod obiektywny to poleciałbym raczej w kierunku routingu. Zamiast miliona różnych plików z mieszanką html/php, a zakładam, że tak to wygląda – jeden entry point typu public/index.phpw którym byłaby zaimplementowana jakąś biblioteka do routingu (po co wymyślać koło od nowa).

Przykładowo, komponent do routingu z Laravel'a (wykorzystanie poza larvą: https://github.com/mattstauffer/Torch/tr...ts/routing) bądź biblioteka z Symfony.
"Try not. Do... or do not. There is no try."
Poświęć 5 minut. Nie bądź ignorantem!  -  Jak zbadać element?
Cały dostępny kod
https://github.com/znaqu/wps
Dopiero dzisiaj zacząłem przepisywać kod i starać się go rozbić aby jak najmniej było mieszanki php i html
Nie jestem aż tak zaawansowany w php i kompletnie nie rozumiem tego routingu, dopiero się uczę i chce się nauczyć wszystkiego powoli, a nie używać gotowców, których nie rozumiem
Routing, czyli to o co pytasz, do tak prostej strony można ogarnąć w .htaccess (hasło: pretty urls htaccess), nie trzeba tego w ogóle pisać na plikach PHP.
Odpowiem na temat samych includowania plików. Czy jest zgodne ze standardem? Nie ma globalnych standardów opisujących takie rzeczy, ale definiowanie stałych które trzymają ścieżki do konkretnych folderów jest lepszym rozwiązaniem niż stosowałeś wcześniej.
Aktualnie teraz używa się raczej autloadera w połączeniu z namespaces. Zobacz sobie spl_autload_register. Jednak jest to standard ładowania klas, a nie plików, więc musiałbyś znacząco przerobić swój dotychczasowy kod aby był bardziej OOP.



Użytkownicy przeglądający ten wątek:

2 gości