Ho una sceneggiatura. Riceve una variabile chiamata $ node, che è una stringa; per ora, assumiamo che il valore della variabile sia "NODEVALUE". Quando viene chiamato lo script, prende la variabile $ node e prova a trovare un'immagine denominata NODEVALUE.png. Se non riesce a trovare quell'immagine, controlla NODEVALUE.jpg, se non riesce a trovare NODEVALUE.gif ... e, dopo tutto, non riesce a trovare, restituisce RANDOM.png.Il controllo di più file esiste? Un modo migliore?
In questo momento sto facendo questo script come segue:
if (file_exists($img = $node.".png")) { }
else if (file_exists($img = $node.".jpg")) { }
else if (file_exists($img = $node.".gif")) { }
else
{
$img = 'RANDOM.png';
}
Ci deve essere un modo migliore di questo ... Qualcuno ha qualche idea?
La cosa di questo è che sono preoccupato per le prestazioni ... array_filter sarebbe eseguire la funzione file_exist su ogni risultato. Se il primo risultato funziona, non vi è alcun motivo per eseguire gli altri risultati ... è solo uno spreco di risorse. –
Okay ... il loop che hai fatto alla fine è perfetto. Tranne che l'ho semplicemente cambiato in 'if (file_exists (stuff)) {$ img = stuff; rompere; } 'tutto il resto è ridontante. –