Uzyskaj bezwzględną ścieżkę w PHP wyjaśniono przykładami

Uzyskaj bezwzględną ścieżkę w PHP wyjaśniono przykładami

Podczas pracy z PHP często konieczne jest uzyskanie bezwzględnej ścieżki pliku lub katalogu na serwerze. Wynika to z faktu, że niektóre funkcje i skrypty wymagają bezwzględnej ścieżki do prawidłowego działania. W tym artykule wyjaśnimy, czym są bezwzględne ścieżki, dlaczego są one ważne, i pokażesz kilka przykładów, jak uzyskać bezwzględną ścieżkę w PHP.

Jaka jest bezwzględna ścieżka?

Bezwzględna ścieżka to kompletna ścieżka, która rozpoczyna się od źródła systemu plików i zawiera wszystkie katalogi i podwodniki potrzebne do dotarcia do określonego pliku lub katalogu. Na przykład w systemie opartym na Unixie bezwzględna ścieżka do katalogu głównego jest „/”.

Ścieżki bezwzględne są ważne, ponieważ zapewniają jednoznaczny sposób zlokalizowania pliku lub katalogu na serwerze, niezależnie od tego, gdzie znajduje się skrypt lub jak wywoływano skrypt.

Jak uzyskać bezwzględną ścieżkę w PHP

Istnieje kilka sposobów na uzyskanie bezwzględnej ścieżki w PHP. Omówimy niektóre z najczęstszych metod.

Metoda 1: Korzystanie z stałej pliku

Stała pliku zwraca pełną ścieżkę i nazwę pliku bieżącego pliku. Aby uzyskać bezwzględną ścieżkę pliku, możesz użyć funkcji dirname (), aby wyodrębnić nazwę katalogu ze stałej pliku. Oto przykład:

$ absolute_path = dirname (__ file__);
1$ absolute_path = dirname (__ file__);

To da ci bezwzględną ścieżkę pliku, w której kod jest wykonywany.

Metoda 2: Korzystanie z funkcji realPath ()

Funkcja realpath () zwraca bezwzględną ścieżkę pliku lub katalogu, rozwiązywając dowolne symboliczne łącza lub odniesienia do katalogów nadrzędnych. Oto przykład:

$ absolute_path = realPath („względne/ścieżka/do/file”);
1$ absolute_path = realPath („względne/ścieżka/do/file”);

To da ci bezwzględną ścieżkę pliku lub katalogu określonego przez ścieżkę względną.

Metoda 3: Za pomocą zmiennej $ _Server ['Document_Root']

Zmienna $ _server ['Document_Root'] zwraca główny katalog serwera, który zwykle jest katalogiem, w którym instalowana jest strona internetowa. Możesz użyć tej zmiennej do konstruowania bezwzględnej ścieżki pliku lub katalogu. Oto przykład:

$ absolute_path = $ _Server ['Document_Root'] . "/ścieżka/do/file";
1$ absolute_path = $ _Server ['Document_Root'] . "/ścieżka/do/file";

To da ci bezwzględną ścieżkę pliku lub katalogu w stosunku do korzenia dokumentu.

Metoda 4: Korzystanie z funkcji getCwd ()

Funkcja getCwd () zwraca bieżący katalog roboczy skryptu. Możesz użyć tej funkcji do skonstruowania bezwzględnej ścieżki pliku lub katalogu w stosunku do bieżącego katalogu roboczego. Oto przykład:

$ absolute_path = getCwd () . "/ścieżka/do/file";
1$ absolute_path = getCwd () . "/ścieżka/do/file";

To da ci bezwzględną ścieżkę pliku lub katalogu w stosunku do bieżącego katalogu roboczego.

Wniosek

W tym artykule wyjaśniliśmy, czym są bezwzględne ścieżki i dlaczego są one ważne. Pokazaliśmy również kilka przykładów, jak uzyskać bezwzględną ścieżkę w PHP za pomocą PLIK stałe, realpath () funkcja, $ _Server ['Document_root'] zmienna i getCwd () funkcjonować. Korzystając z tych metod, możesz upewnić się, że twoje skrypty PHP działają poprawnie, niezależnie od tego, gdzie znajdują się na serwerze.