⊗ppPmFSRP 334 of 447 menu

Względne ścieżki w PHP

Jak już wiesz, do parametru funkcji file_get_contents należy wpisać nazwę pliku. Działa to jednak tylko wtedy, gdy odczytywany plik znajduje się w tym samym folderze, w którym uruchamiany jest nasz skrypt.

Jeśli plik znajduje się w innym miejscu, to do parametru funkcji należy wpisać ścieżkę do tego pliku.

Spójrzmy na przykład.

Przykład

Załóżmy, że mamy następującą strukturę plików:

  • index.php
  • /directory/
    • test.txt

Przeczytajmy zawartość pliku tekstowego. W tym celu oprócz nazwy pliku będziemy potrzebować podać również folder, w którym się znajduje:

<?php echo file_get_contents('directory/test.txt'); ?>

Przykład

Załóżmy, że mamy następującą strukturę plików:

  • /script/
    • index.php
  • test.txt

W takim przypadku próba odczytania naszego pliku, podając jako ścieżkę jego nazwę, zakończy się błędem:

<?php echo file_get_contents('test.txt'); // zwróci błąd ?>

Dlaczego zwracany jest błąd? Chodzi o to, że do parametru funkcji wpisaliśmy nazwę pliku. Oznacza to, że odczytywany plik powinien znajdować się w tym samym folderze, co uruchamiany skrypt.

Jednak nasz odczytywany plik znajduje się o poziom wyżej, czyli w folderze, który zawiera folder ze skryptem.

W takim przypadku musimy wyraźnie wskazać w ścieżce do pliku, że ten plik należy szukać o poziom wyżej. W tym celu przed nazwą pliku należy napisać ../. Zróbmy to:

<?php echo file_get_contents('../test.txt'); // plik zostanie odczytany ?>

Przykład

Załóżmy, że mamy następującą strukturę plików:

  • /script/
    • index.php
  • /directory/
    • test.txt

W tym przypadku przy odczycie pliku najpierw wyjdziemy o poziom wyżej, a następnie wskażemy ścieżkę do naszego pliku względem tego poziomu:

<?php echo file_get_contents('../directory/test.txt'); ?>

Przykład

Załóżmy, że mamy następującą strukturę plików:

  • /script/
    • /test/
      • index.php
  • /directory/
    • test.txt

W tym przypadku będziemy potrzebować wyjść do góry dwa razy:

<?php echo file_get_contents('../../directory/test.txt'); ?>

Zadania praktyczne

Napisz kod, który odczyta zawartość pliku tekstowego:

  • index.php
  • /dir1/
    • /dir2/
      • test.txt

Napisz kod, który odczyta zawartość pliku tekstowego:

  • /script/
    • index.php
  • /dir1/
    • /dir2/
      • test.txt

Napisz kod, który odczyta zawartość pliku tekstowego:

  • /script1/
    • /script2/
      • index.php
  • /dir/
    • test.txt

Napisz kod, który odczyta zawartość pliku tekstowego:

  • /script1/
    • /script2/
      • /script3/
        • index.php
  • /dir1/
    • /dir2/
      • /dir3/
        • test.txt
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć