It would be more usual to say "The lesson for today" or "Today's Lesson" Similarly you could say "You had better sleep for nine hours every day", or "You had better get nine hours of sleep every day", which avoids the clumsy repetition of the suggested sentence in the text book. That sentence is grammatically correct, of course, but in every day english people might contract the sentence to "sleep nine hours' sleep", which would be correct, but indistinguishable when spoken from the incorrect "to sleep nine hours sleep". The form may be brloken up by using the word "worth" - "to sleep nine hours' worth of sleep", or "Your six day's worth of food is in the fridge" By hyphenating nine-hours you arguably turn the words into an adjective, in which case nine-hours food or to dream a nine-hour dream, or to have a six-day store of food in the fridge would be acceptable correct english.
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.