Come posso sapere se una stringa è un dato codificato con la funzione base64_encode()
oppure no?La codifica 64 della stringa è codificata?
È possibile?
Come posso sapere se una stringa è un dato codificato con la funzione base64_encode()
oppure no?La codifica 64 della stringa è codificata?
È possibile?
Tentativo di decodificarlo rigorosamente rispetto all'alfabeto Base64. Il secondo parametro consente di applicare questo controllo rigoroso; lasciandolo fuori, la funzione di decodifica semplicemente estrae caratteri illegali prima di decodifica:
if (base64_decode($str, true) === false)
{
echo 'Not a Base64-encoded string';
}
Prova questa:
if(base64_encode(base64_decode($img, true)) === $img)
echo 'is a Base64-encoded string' ;
Sarebbe molto meglio se non si avrebbe bisogno di un tale rilevazione a tutti. Molti programmatori esperti possono vivere senza di esso e sono sicuro che potresti. –
Vedere anche http://stackoverflow.com/questions/475074 – Gumbo
@ Gumbo: Non ho aggiunto il tag [php5]: la mia modifica ha richiesto più tempo per l'invio rispetto a quanto il tuo ha fatto in qualche modo. L'ho rimosso ora. – BoltClock