Esercitazione PHP

PHP HOME Introduzione a PHP Installazione PHP Sintassi PHP Commenti PHP Variabili PHP PHP Eco/Stampa Tipi di dati PHP Stringhe PHP Numeri PHP PHP matematica Costanti PHP Operatori PHP PHP Se...Altro...Altro Passaggio PHP Ciclo PHP Funzioni PHP Matrici PHP Superglobali PHP RegEx PHP

Moduli PHP

Gestione dei moduli PHP Convalida del modulo PHP Modulo PHP richiesto URL/e-mail del modulo PHP Modulo PHP completo

PHP avanzato

Data e ora PHP PHP Include Gestione dei file PHP Apri/Leggi file PHP Creazione/scrittura di file PHP Caricamento file PHP Cookie PHP Sessioni PHP Filtri PHP Filtri PHP avanzati Funzioni di callback PHP PHP JSON Eccezioni PHP

PHP OOP

PHP Che cos'è OOP Classi/Oggetti PHP Costruttore PHP PHP distruttore Modificatori di accesso PHP Ereditarietà PHP Costanti PHP Classi astratte PHP Interfacce PHP Tratti PHP Metodi statici PHP Proprietà statiche PHP Spazi dei nomi PHP Iterabili PHP

Database MySQL

Database MySQL MySQL Connect MySQL Crea DB MySQL Crea tabella Dati di inserimento MySQL MySQL Ottieni l'ultimo ID MySQL inserisce più MySQL preparato MySQL Seleziona dati MySQL dove MySQL Ordina per MySQL Elimina dati Dati di aggiornamento MySQL Dati limite MySQL

PHP XML

Parser XML PHP Analizzatore PHP SimpleXML PHP SimpleXML - Ottieni PHP XML espatriato PHP XML DOM

PHP - AJAX

Introduzione all'Ajax AJAX PHP Database AJAX XML AJAX Ricerca in tempo reale AJAX Sondaggio AJAX

Esempi PHP

Esempi PHP compilatore PHP Quiz PHP Esercizi PHP Certificato PHP

Riferimento PHP

Panoramica di PHP matrice PHP Calendario PHP Data PHP Directory PHP Errore PHP Eccezione PHP File system PHP Filtro PHP PHP FTP PHP JSON Parole chiave PHP PHP Libxml Posta PHP PHP matematica PHP Varie PHP MySQLi Rete PHP Controllo dell'output PHP RegEx PHP PHP SimpleXML Flusso PHP Stringa PHP Gestione delle variabili PHP Analizzatore XML PHP Zip PHP Fuso orario PHP

File PHP Apri/Leggi/Chiudi


In questo capitolo ti insegneremo come aprire, leggere e chiudere un file sul server.


File aperto PHP - fopen()

Un metodo migliore per aprire i file è con la fopen()funzione. Questa funzione offre più opzioni rispetto alla readfile()funzione.

Utilizzeremo il file di testo, "webdictionary.txt", durante le lezioni:

AJAX = Asynchronous JavaScript and XML
CSS = Cascading Style Sheets
HTML = Hyper Text Markup Language
PHP = PHP Hypertext Preprocessor
SQL = Structured Query Language
SVG = Scalable Vector Graphics
XML = EXtensible Markup Language

Il primo parametro fopen()contiene il nome del file da aprire e il secondo parametro specifica in quale modalità deve essere aperto il file. L'esempio seguente genera anche un messaggio se la funzione fopen() non è in grado di aprire il file specificato:

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>

Suggerimento: le funzioni fread()e fclose()verranno spiegate di seguito.

Il file può essere aperto in una delle seguenti modalità:

Modes Description
r Open a file for read only. File pointer starts at the beginning of the file
w Open a file for write only. Erases the contents of the file or creates a new file if it doesn't exist. File pointer starts at the beginning of the file
a Open a file for write only. The existing data in file is preserved. File pointer starts at the end of the file. Creates a new file if the file doesn't exist
x Creates a new file for write only. Returns FALSE and an error if file already exists
r+ Open a file for read/write. File pointer starts at the beginning of the file
w+ Open a file for read/write. Erases the contents of the file or creates a new file if it doesn't exist. File pointer starts at the beginning of the file
a+ Open a file for read/write. The existing data in file is preserved. File pointer starts at the end of the file. Creates a new file if the file doesn't exist
x+ Creates a new file for read/write. Returns FALSE and an error if file already exists


File di lettura PHP - fread()

La fread()funzione legge da un file aperto.

Il primo parametro di fread()contiene il nome del file da cui leggere e il secondo parametro specifica il numero massimo di byte da leggere.

Il seguente codice PHP legge il file "webdictionary.txt" fino alla fine:

fread($myfile,filesize("webdictionary.txt"));

File di chiusura PHP - fclose()

La fclose()funzione viene utilizzata per chiudere un file aperto.

È una buona pratica di programmazione chiudere tutti i file dopo averli terminati. Non vuoi che un file aperto in giro sul tuo server occupi risorse!

Richiede il fclose()nome del file (o una variabile che contiene il nome del file) che vogliamo chiudere:

<?php
$myfile = fopen("webdictionary.txt", "r");
// some code to be executed....
fclose($myfile);
?>

PHP Leggi riga singola - fgets()

La fgets()funzione viene utilizzata per leggere una singola riga da un file.

L'esempio seguente restituisce la prima riga del file "webdictionary.txt":

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fgets($myfile);
fclose($myfile);
?>

Nota: dopo una chiamata alla fgets()funzione, il puntatore del file si è spostato sulla riga successiva.


PHP Verifica fine file - feof()

La feof()funzione verifica se è stata raggiunta la "fine del file" (EOF).

La feof()funzione è utile per scorrere dati di lunghezza sconosciuta.

L'esempio seguente legge il file "webdictionary.txt" riga per riga, fino a raggiungere la fine del file:

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one line until end-of-file
while(!feof($myfile)) {
  echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>

PHP Leggi un singolo carattere - fgetc()

La fgetc()funzione viene utilizzata per leggere un singolo carattere da un file.

L'esempio seguente legge il file "webdictionary.txt" carattere per carattere, fino al raggiungimento della fine del file:

Esempio

<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one character until end-of-file
while(!feof($myfile)) {
  echo fgetc($myfile);
}
fclose($myfile);
?>

Nota: dopo una chiamata alla fgetc()funzione, il puntatore del file si sposta sul carattere successivo.


Riferimento completo al file system PHP

Per un riferimento completo delle funzioni del filesystem, vai al nostro riferimento completo al filesystem PHP .


Esercizi PHP

Mettiti alla prova con gli esercizi

Esercizio:

Apri un file e scrivi la sintassi corretta per produrre un carattere alla volta, fino alla fine del file.

$myfile = fopen("webdict.txt", "r");
while(!($myfile)) {
  echo ($myfile);
}