Screamer, код не логичен, зачем при сравнении использовать массив получаемый от scandir и использовать readdir? не логичнее сразу работать с массивом, а не прогонять через цикл , можно готовый массив прогнать и сделать нужное, раза в два код короче станет