Italy kept their hopes of qualification intact with a 2-0 win over South Africa, secured by Ricarrdo Orsolini and Andrea Favilli.
The Italians produced a dominant performance and broke through when Orsolini converted a penalty before the break, with Favilli thumping home a header to put them in total control shortly before the hour mark.
Portugal suffered further frustration as they failed to hold on to a 1-0 lead and were held to a 1-1 draw by Costa Rica.
Zambia produced an outstanding comeback to seal their progress in the Under-20 World Cup as they beat Iran 4-2 in South Korea.
They went behind when a scuffed clearance enabled Reza Shekari to strike, with the same player doubling the lead from the penalty spot soon after the break.
But six minutes later Fashion Sakala volleyed in, and a fine move brought the equaliser when Enock Mwepu struck. Emmanuel Banda put Zambiua ahead before the comeback was completed by Patson Daka late on.
Uruguay also sealed progress to the round-of-16 with a 2-0 victory over Japan.
They broke through as a tight first half drew towards a close as Jose Luis Rodriguez burst away from defenders to set up Nicolas Schiappacasse for the opener. Mathias Olivera made sure when Marcelo Sarachhi set him up after a late counter-attack.
Diogo Goncalves, whose passing was behind many of his side's best moments, struck first from the penalty spot after a handball, although keeper Erick Pineda was close to stopping it. Within seconds of the second half starting, a foul gave Costa Rica a penalty that cannoned in via the knee of keeper Diogo Costa.