The constitution only allows for martial law to be declared for 60 days at a time, but Duterte says the five-month extension is necessary to quell a rebellion by ISIS-affiliated fighters in the besieged city of Marawi, which is on Mindanao.
After debating for six hours in a special joint-session on Saturday, lawmakers overwhelmingly approved the President's request -- in a vote of 16-4 in the Senate and 245-18 in the House of Representatives -- to keep Mindanao under martial law until December 31.
President Duterte initially declared martial law
in Mindanao on May 23, after fighters from militant groups that have pledged allegiance to ISIS invaded Marawi and took control of several government buildings in the city and set fire to others.
For more than two months, Philippines forces have been trying to root out the fighters, mainly from a local militant group known as Maute, who are being commanded by Isnilon Hapilon, the leader of the notorious Abu Sayyaf Group.
Duterte's first order for martial law was set to expire on Saturday.
Official figures from the Philippines military show as of July 20, 427 militants, 99 government forces and 45 civilians had been killed in the fighting.
Nearly 350,000 people in the city and surrounding areas have also been forced to flee -- creating a humanitarian crisis authorities have been struggling to contain.
The Philippines government estimates only a few dozen militants remain in Marawi, but in his letter to Congress on Monday when he asked for the extension, Duterte said the militants' leadership remains "largely intact."
On Thursday, Duterte made his first visit to Marawi since the fighting began, to visit troops who are battling the remaining fighters. His visit to the Marawi operational center at Camp Ranao took place "amidst the sound of gun and artillery fire (in) the background," a report by the state-run Philippines News Agency (PNA) said. Duterte, dressed in military camouflage, was visibly emotional
as he talked about the dead and wounded.
When he first declared martial law in Mindanao in May, Duterte had warned the order could last up to a year
"If it would take a year to do it, then we'll do it," he said at the time. "If it's over within a month, then I'd be happy."
Duterte also suggested he could expand the order nationwide in order to fight ISIS.
"If I think ISIS has already taken foothold also in Luzon and terrorism is not really far behind, I might declare martial law through the country to protect the people," he said at a news conference on May 24.
Under the 1987 constitution, the President is allowed to place the country under martial law, but for no more than two months.
The provision was made a year after former dictator Ferdinand Marcos was ousted from power. Marcos had ruled the Philippines under martial law for 14 years.