Come inviare un file di immagine di PHP

July 16

PHP è un linguaggio di scripting potente che viene spesso utilizzato per creare pagine Web dinamiche e applicazioni. La funzionalità che PHP mette a disposizione uno sviluppatore Web è praticamente infinita, permettendo un programmatore per presentare i contenuti di un utente e la modifica di file e voci del database sul server. Mentre i file PHP sono più comunemente utilizzati per inviare pagine HTML a un browser Web, può anche essere utilizzato per inviare altri tipi di file, tra cui immagini.

istruzione

1 Leggere il contenuto del file di immagine in una variabile stringa. Per questo esempio, si supponga che il file di immagine che sarà l'invio è in una sottodirectory denominata "immagini" e che il file è denominato "phpimage.png".

<?

$ Img_data = file_get_contents ( "immagini / phpimage.png");

?>

2 Invia un header HTTP dicendo browser dell'utente che i dati che si sta inviando è un'immagine. Dal momento che il file che si sta inviando è un PNG, il MIME (Multipurpose Internet Mail Extensions) è di tipo "image / png". Alcuni altri mimi immagine più comuni includono "image / jpeg", "image / gif" e "image / tiff".

<?

$ Img_data = file_get_contents ( "immagini / phpimage.png");

header ( "Content-type: image / png");

?>

3 Invia il contenuto della variabile stringa all'utente con un'eco.

<?

$ Img_data = file_get_contents ( "immagini / phpimage.png");

header ( "Content-type: image / png");

echo $ img_data;

?>

Consigli e avvertenze

  • È possibile espandere questo codice per fare le cose come la selezione dinamicamente da un certo numero di immagini, la lettura dei dati di immagine da un database invece di un file o la visualizzazione di un'immagine errore se il file richiesto non può essere trovato.
  • Essere sicuri di non inviare tutti i dati prima del comando di intestazione. Un errore comune è quello di avere una riga vuota sopra l'iniziale "<?" etichetta. Fare questo causerà un errore, come tutte le intestazioni HTTP devono essere inviate prima del corpo del documento.