Uzyskaj bezwzględną ścieżkę w PHP wyjaśniono przykładami
- 2379
- 544
- Igor Madej
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.
- « Jak utworzyć użytkownika SFTP bez dostępu do powłoki na Ubuntu 18.04 i 16.04
- Pobierz Fedora 29 - obrazy ISO DVD »