domenica 22 ottobre 2017

Capire se è un file o una cartella in php

Si lo so, manca il soggetto nel titolo del mio post, ma non sapevo proprio che termine usare per definire l'oggetto di cui vi sto per parlare.
Praticamente, quello che in questo articolo voglio spiegare, è come capire se ci si trova davanti ad un file o una cartella in php.
Quindi banalmente potevo anche scrivere, "il contenuto di una variabile è un file o una cartella?"

Senza altri giri di parole, vediamo subito come capire in php se ci si trova davanti ad un oggetto di tipo file o ad una cartella.


Come capire se una variabile è un file o una cartella in php


In questo breve articolo vi spiegherò il funzionamento di ben due funzioni, due semplici funzioni php che consentono di distinguere che tipo oggetto si sta controllando sul server.

Detta all'inglese, is file o is folder?
Eccole le due funzioni, spiegate una per uno.

Come capire se l'oggetto è un file? Semplice, utilizzando questa sintassi:

is_file("percorso-file/nome-file.estensione");

La funzione php is_file, restituirà semplicemente true o false (vero o falso), e quindi in un attimo si avrà la risposta a questa semplice domanda.
Ovviamente, come specificato nell'esempio sopra indicato, va specificato il giusto percorso del file sul server, altrimenti la funzione restituirà sempre false.
Un'altra funzione utile sui file è quella che ne verifica l'esistenza (file_exists).

Come capire se l'oggetto è una directory in php?
Per capire se l'oggetto con cui si ha a che fare è una cartella, basta utilizzare la seguente sintassi:

is_dir("percorso-file/nome-file.estensione");

Ovviamente vale tutto quanto già detto per i file, ovvero, no giusto percorso = no directory trovata = false.

Ed anche per oggi è tutto.
Il php come linguaggio di programmazione per il web, ha delle potenti ed utili funzioni native per la gestione dei file.
Quelle spiegate in questo post sono solo la punta dell'iceberg, restate tonnati per vedere (a breve) qualche esempio più pratico ed utile per i vostri siti internet.

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon