E' possibile risalire al Content type di un file che risiede in una specifica cartella sul server?
Ho provato con le funzioni curl, ma senza un gran esito, inoltre non sono sicuro sia la strada giuta da seguire.
Info?
Grazie
E' possibile risalire al Content type di un file che risiede in una specifica cartella sul server?
Ho provato con le funzioni curl, ma senza un gran esito, inoltre non sono sicuro sia la strada giuta da seguire.
Info?
Grazie
In linea di massima il content type "dipende" dall'estensione del file. Se cerchi con google si trovano liste piuttosto complete.
Questo ok, ma mi pare non sia molto affidabile o perlomeno ci si potrebbe dimenticare di qualche cosa o se non ho capito male il concetto, dovrei fare molti case, uno per tipo di file.Originariamente inviato da filippo.toso
In linea di massima il content type "dipende" dall'estensione del file. Se cerchi con google si trovano liste piuttosto complete.
Sono riuscito a usare le funzioni curl, ora chiedo è corretto?
In tutti i sensi, non avendo mai usato curl magari non ho fatto le cose per il verso giusto, oppure esistono altri metodi senza affidarsi a diversi case?
Questa e la parte al momento funzionante:
Dove in $ct mi ritrovo il content type e in $cp le dimensioni del file.Codice PHP:
//percorso del file
$curl = curl_init("http://www.sito.net/download/".$riga_a['nome_file']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_exec($curl);
//content type e dimensione
$ct = curl_getinfo($curl, CURLINFO_CONTENT_TYPE);
$cp = curl_getinfo($curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
//
A prima vista sembra funionare su svariati tipi di file, tutto torna anche nelle dimensioni e sembrerebbe anche veloce, tenendo anche conto che il tutto è racchiuso in un ciclo.
Di quali "case" stai parlando. Ti basta creare un array associativo dove le chiavi sono le estensioni ed i valori i content type. Poi con isset() verifichi se l'estensione è presente ed utilizzi il relativo content type.Originariamente inviato da serialkiller
Questo ok, ma mi pare non sia molto affidabile o perlomeno ci si potrebbe dimenticare di qualche cosa o se non ho capito male il concetto, dovrei fare molti case, uno per tipo di file.
Perchè eseguire una richiesta HTTP al web server quando puoi fare tutto in PHP molto più velocemente ed in maniera più affidabile (non è detto che il web server conosca l'estensione del tuo file).Originariamente inviato da serialkiller
Sono riuscito a usare le funzioni curl, ora chiedo è corretto?
Secondo te è più affidabile? Mi pareva di aver letto il contrario, ma ovviamente posso sbagliare.Originariamente inviato da filippo.toso
Perchè eseguire una richiesta HTTP al web server quando puoi fare tutto in PHP molto più velocemente ed in maniera più affidabile (non è detto che il web server conosca l'estensione del tuo file).
La richiesta mi sembra veloce e mi serve solo per 5 elementi per servire enclosure all'interno di un feed rss.
Comunque mi cerco la lista che devo aver usato anche per altre cose e vedo la differenza.
Se il web server non conosce già l'estensione, non funzionerà.Originariamente inviato da serialkiller
Secondo te è più affidabile? Mi pareva di aver letto il contrario, ma ovviamente posso sbagliare.
Se il PHP non ha le estensioni curl attive, non funzionerà.
Se ci sono problemi di risoluzione dei nomi, non funzionerè.
Per ogni richiesta HTTP, ne viene generata un'altra automaticamente, anche se difficilmente il risultato sarà diverso (es. una volta richieste le estensioni più comuni, il resto delle richieste sono solo un overhead inutile).
E così via...
Ok, così comunque mi funziona, visto che è probabile che io abbia liste vecchie, hai un link di "fiducia", passami il termine.Originariamente inviato da filippo.toso
Se il web server non conosce già l'estensione, non funzionerà.
Se il PHP non ha le estensioni curl attive, non funzionerà.
Se ci sono problemi di risoluzione dei nomi, non funzionerè.
Per ogni richiesta HTTP, ne viene generata un'altra automaticamente, anche se difficilmente il risultato sarà diverso (es. una volta richieste le estensioni più comuni, il resto delle richieste sono solo un overhead inutile).
E così via...
Il concetto dell'array lo uso per servire le icone su un altro lavoro, magari implemento anche quello.
Grazie ovviamente di tutto.
Ok, dimenticavo, ovviamente così non ho le dimensioni del file, che nel tag enclosure è necessario, quindi non vedo altre soluzioni: o salvo content type e dimensioni nel DB quando carico il file o uso curl, usando l'array dei content type mi mancherebbe comunque la dimensione...posso affidarmi a filesize...forse.Originariamente inviato da filippo.toso
http://www.google.it/search?q=list+mime+types