Come leggere e usare il contenuto di un file in PHP

Un sito web è composto di numerosi file di vario genere, che vengono gestiti dal server in modo da mostrare un determinato contenuto di una pagina agli utenti che lo richiedono. Nella maggior parte dei server Linux, PHP è il linguaggio di programmazione predefinito utilizzato poi dagli sviluppatori per creare pagine web dinamiche.

Durante lo sviluppo dei siti, PHP consente di leggere, scrivere e visualizzare ogni file e risorsa in maniera semplice ed efficiente, attraverso specifiche funzioni. Per un programmatore è importante conoscere e saper usare queste funzioni dedicate alla gestione dei file perché fanno parte di quel “pacchetto” base per lo sviluppo in PHP.

In quest’articolo spiegheremo in dettaglio le funzioni PHP per la lettura del contenuto dei file presenti nelle directory di un sito e il loro utilizzo.

Funzioni PHP per leggere il contenuto di un file

file_get_contents()

Nelle varie versioni di PHP, troviamo file_get_contents(), da sempre una delle funzioni native più usate e utili di questo linguaggio server-side. Come dice il nome stesso, file_get_contents() permette di leggere e usare il contenuto di un file presente nel server su cui è ospitato il sito, così da poterlo riutilizzare a proprio piacimento per lo sviluppo di un’altra pagina PHP.

Per chiarezza, è bene specificare che tale funzione consente solo di “leggere” il contenuto in formato testuale del file interessato, ma non permette la scrittura all’interno di esso, dunque non permette di modificarne il contenuto (per questo scopo esiste la correlata funzione file_put_contents() che non tratteremo in questo articolo).

Per usare la funzione file_get_contents() in PHP bisogna (per ovvi motivi) conoscere la path (percorso) relativa del file e della directory in cui è ospitato. Dunque, bisogna avere accesso ai file del sito nel server.

Come si usa

Il modo più semplice per leggere il contenuto di un file con file_get_contents() in PHP è il seguente:

<?php
    file_get_contents("file.php");
?>

Dove “file.php” equivarrà al nome del file o pagina con il contenuto da recuperare. Possiamo tuttavia migliorare il codice e renderlo più pratico nel seguente modo:

<?php 
   $file = file_get_contents("./file.php");
   echo $file;
?>

In questo modo abbiamo racchiuso il contenuto del file interessato all’interno di una variabile, che possiamo riutilizzare in qualsiasi momento all’interno del documento corrente, affermandosi la miglior tecnica per la lettura e utilizzo del contenuto di un file tramite la funzione file_get_contents().

fopen()

Oltre alla funzione precedentemente vista, proponiamo un’alternativa leggermente più complessa nell’utilizzo, che consente comunque di ricevere e leggere il contenuto di un documento (indifferentemente dal formato). La funzione interessata è fopen().

La differenza tra i due è che file_get_contents() legge (solo lettura) un file come stringa di testo;
fopen() invece è usato per differenti scopi ed è seguita generalmente da altre funzioni per la gestione di un file (come la scrittura e chiusura), è una funzione di più basso livello che non può essere usata da sola (non puoi usare fopen() neanche solo per la lettura stessa del file).

Come si usa

fopen() va integrata in una funzione creata ad hoc per la lettura di un file, come potrai vedere nel seguente codice.
Consiglio di usare fopen() se si ha anche intenzione di scrivere all’interno del documento interessato.

Il codice è il seguente:

<?php

  function apriFile($path) {
     $src = fopen($path, 'r');
     $text = stream_get_contents($src);
     fclose($src);
     return $text;
  }

   $file = apriFile("./file.php");

   echo $file;

?>

fopen() viene utilizzata in una funzione più articolata, ma che può essere arricchita per assecondare le diverse esigenze.

Iscriviti alla nostra Newsletter qui e seguici su Facebook per aggiornamenti!


Articoli recenti:

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

CAPTCHA