Jeśli dobrze rozumię... Masz plik, który ma 7 pozycji zawsze. Otwierasz go, chcesz zabrać ostatni element a z reszty wylosować miejsca od 1 d 5 oraz 7, bo ów ostatni wchodzi z góry na miejsce 6? To czemu nie zrobisz tak jak algorytmicznie pisze?

1. Odczytujesz cały plik jako tablicę rekordów.
2. Ostatni element usuwasz z tablicy i zapisujesz w tempie
3. Resztę sobie randomowo mieszasz.
4. Z tempa wyciągasz element i wciskasz go przed ostatni element.
Jako że nie ma akurat gotowej funkcji by zrobić punkt 4 to musisz go zrobić "na około". Można choćby dokleić kopię tego z tempa i potem do owego klucza przepisać wartość ostatniego elementu, a w miejsce stare wrzucić wartość z tempa. Do użycia: shuffle, array_pop jako przydatne funkcje.