Forse non ho capito bene cosa vuoi fare..
Nel tuo foreach stampi la tua immagine e poi vorresti che per ogni immagine stampata compaia sotto la sua descrizione, giusto?
L'unico aggancio che vedo dalla tua immagine al tuo file .txt è il nome file percui devi inserire un controllo che stampi solo la descrizione corretta
Codice PHP:
$file_handle fopen("pics.txt""rb");

while (!
feof($file_handle) ) {
     
$line_of_text fgets($file_handle);
     
$parts explode(';'$line_of_text);
     if(
$parts[0]==TUO_NOME_FILE_ESTRATTO_DAL_FOEACH){
              
$parts explode('-'$line_of_text);
              echo 
$part[2];//qui avrai la tua descrizione
     
}
}
fclose($file_handle);