⊗ppPmFSRP 334 of 447 menu

Percorsi relativi in PHP

Come già sapete, nel parametro della funzione file_get_contents si dovrebbe scrivere il nome del file. Questo, tuttavia, funziona solo se il file da leggere si trova nella stessa cartella da cui viene eseguito il nostro script.

Se invece il file si trova in un'altra posizione, allora nel parametro della funzione è necessario scrivere il percorso per raggiungere quel file.

Vediamo un esempio.

Esempio

Supponiamo di avere la seguente struttura di file:

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

Leggiamo il contenuto del file di testo. Per fare ciò, oltre al nome del file, avremo bisogno di specificare anche la cartella in cui si trova:

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

Esempio

Supponiamo di avere la seguente struttura di file:

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

In questo caso, il tentativo di leggere il nostro file, specificando come percorso il suo nome, si concluderà con un errore:

<?php echo file_get_contents('test.txt'); // darà un errore ?>

Perché viene generato un errore? Il fatto è che nel parametro della funzione abbiamo scritto il nome del file. Ciò significa che il file da leggere dovrebbe trovarsi nella stessa cartella dell'eseguibile.

Tuttavia, il nostro file da leggere si trova un livello più in alto, cioè nella cartella che contiene la cartella dello script.

In questo caso dobbiamo indicare esplicitamente nel percorso del file, che questo file deve essere cercato un livello più in alto. Per fare ciò, prima del nome del file è necessario scrivere ../. Facciamolo:

<?php echo file_get_contents('../test.txt'); // il file verrà letto ?>

Esempio

Supponiamo di avere la seguente struttura di file:

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

In questo caso, durante la lettura del file, prima usciremo di un livello, e poi indicheremo il percorso verso il nostro file relativamente a quel livello:

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

Esempio

Supponiamo di avere la seguente struttura di file:

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

In questo caso, avremo bisogno di risalire di due livelli:

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

Problemi pratici

Scrivi il codice che leggerà il contenuto del file di testo:

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

Scrivi il codice che leggerà il contenuto del file di testo:

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

Scrivi il codice che leggerà il contenuto del file di testo:

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

Scrivi il codice che leggerà il contenuto del file di testo:

  • /script1/
    • /script2/
      • /script3/
        • index.php
  • /dir1/
    • /dir2/
      • /dir3/
        • test.txt
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta