Il carattere che non avevi considerato e invisibile che viene dal file potrebbe essere il ritorno a capo \n se in formato Unix o \r\n se è in formato Windows.
Prima di fare il confronto, prova a fare
$str2 = str_replace('\n', '', $str2);
dove $str2 è la stringa che viene dal file, poi fai il confronto, se non va, prova a sostiruire \n con \r\n e riprova.