Match ends, Millwall 1, Fulham 3.
Harvey Elliott became Fulham's youngest player as they beat Millwall in the Carabao Cup third round, with boss Slavisa Jokanovic revealing the 15-year-old had a school exam earlier in the day.
The England Under-15 midfielder came on as an 81st-minute substitute with the Cottagers 3-1 up.
"He moved the ball with quality and showed some speed. We believe the future can be bright for him," said Jokanovic.
"He must be at school [on Wednesday] morning. He had some exams [earlier on Tuesday]. He didn't know [he might play], I didn't want to put him in any trouble. I gave him the opportunity to test himself at this level.
"I don't know if I can use a wrong word in English but he is arrogant and positive. This kid shows the personality, like he says 'I want to show you I am a very good player'."
Fulham's Joe Bryan, a £6m signing from Bristol City in August, opened the scoring with a low arrowed finish at the Den.
United States midfielder Luca de la Torre doubled the lead before Tom Elliott's header gave the hosts hope.
Cyrus Christie's 25-yard finish sealed victory before Elliott, aged 15 years and 174 days, came on as a substitute.
Elliott, who is too young to sign a professional contract, trained with Fulham on their recent trip to Spain during the international break.
He has been linked with Barcelona, Chelsea, Borussia Dortmund and Manchester City.
Born in April 2003, he was only two months old when Wayne Rooney made his England debut, has never been alive when Brazil won the World Cup and had just turned one when Arsenal last won the Premier League.
Elliott is the first 15-year-old to play for Fulham, with the previous record being held by Matthew Briggs - who became the Premier League's youngest player in 2007 at the age of 16 years and 65 days.
- 25M Wallace
- 11FergusonSubstituted forJ Wallaceat 87'minutes
- 26SkalakSubstituted forRomeoat 45'minutes
- 21KaracanSubstituted forWilliamsat 74'minutes
- 7J Wallace
- 43S Sessegnon
- 13ReamSubstituted forOdoiat 62'minutes
- 20Le Marchand
- 29Zambo Anguissa
- 36De La TorreSubstituted forO'Rileyat 85'minutes
- 11AyitéSubstituted forElliottat 81'minutes
- Darren Bond
- Shots on Target
Second Half ends, Millwall 1, Fulham 3.
Attempt saved. Aiden O'Brien (Millwall) header from very close range is saved in the centre of the goal. Assisted by Ryan Tunnicliffe with a headed pass.
Corner, Millwall. Conceded by Maxime Le Marchand.
Foul by Aboubakar Kamara (Fulham).
Conor McLaughlin (Millwall) wins a free kick in the defensive half.
Attempt missed. Tom Elliott (Millwall) header from the left side of the box is high and wide to the left. Assisted by Shaun Williams with a cross following a set piece situation.
Foul by Joe Bryan (Fulham).
Shaun Williams (Millwall) wins a free kick on the right wing.
Hand ball by Cyrus Christie (Fulham).
Offside, Millwall. Shaun Williams tries a through ball, but Ryan Tunnicliffe is caught offside.
Corner, Millwall. Conceded by Denis Odoi.
Substitution, Millwall. Jed Wallace replaces Shane Ferguson.
Offside, Millwall. Jake Cooper tries a through ball, but Lee Gregory is caught offside.
Foul by Aboubakar Kamara (Fulham).
Jake Cooper (Millwall) wins a free kick in the defensive half.
Substitution, Fulham. Matt O'Riley replaces Luca De La Torre.
Luca De La Torre (Fulham) wins a free kick on the left wing.
Foul by Conor McLaughlin (Millwall).
Substitution, Fulham. Harvey Elliott replaces Floyd Ayité.