Controllo fine stringa

Salve...

Io ho uno script che permette di inserire l'URL del proprio avatar. Vorrei effettuare un controllo per vedere se alla fine dell'URL l'estensione č corretta (e quindi se quest'ultimo termina con .gif, .jpg o .png)...

Qualche consiglio?

Grazie

inviato 9 anni fa
NeO_Giu
X 0 X

potresti fare l'explode della stringa usando il punto come separatore e poi leggere l'ultimo elemento dell'array di stringhe ottenuto, che conterrą appunto l'estensione del file.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Se devi controllare che l'URL corrisponda ad un'immagine e che questa esista puoi usare getimagesize()

risposto 9 anni fa
Xscratch
X 0 X

potresti fare l'explode della stringa usando il punto come separatore e poi leggere l'ultimo elemento dell'array di stringhe ottenuto, che conterrą appunto l'estensione del file.

 :bye:

E' una buona idea ma non posso dedurre quanti punti ci saranno nella stringa... Come posso prelevare l'ultimo elemento dell'array?

getimagesize() č anche un controllo che posso fare ma voglio comunque prima controllare se l'estensione č tra quelle tre...

risposto 9 anni fa
NeO_Giu
X 0 X

per prelevare l'ultimo elemento: array_pop()

risposto 9 anni fa
Xscratch
X 0 X

comunque io piuttosto dell'explode sull'intera stringa, io ricercherei il '.' mediante strrpos() e poi avanti con mb_substr()

Gianni secondo te cosa conviene?

risposto 9 anni fa
Xscratch
X 0 X

supponendo che non si siano molti punti in un percorso allora credo che entrambi gli approcci siano equivalenti

comunque esiste anche un modo "ufficiale" di ricavare l'estensione di un file:

$path_parts = pathinfo('/percorso/al/file.jpg');

echo $path_parts['extension'];

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda