Soldiers were approaching a known hotbed of the militant Abu Sayyaf group on the strife-torn island of Jolo when the fighting broke out, military statements said.
The Abu Sayyaf initially fired on the soldiers, killing an officer. Ten minutes later, six more soldiers were killed and many others wounded when the Abu Sayyaf fired mortar shells at them, the statement added.
The fighting left 10 Abu Sayyaf fighters dead, although only one body was recovered, and 24 soldiers wounded, the military said.
The attack comes after the Abu Sayyaf suffered a series of setbacks including the capture in Manila last week of one of its leaders, Khair Mundos, who is on the US government's list of "most wanted" terror suspects.
More From This Section
Days later, two of his followers were also arrested.
The military would not say why the troops were in the rural town of Patikul, a known Abu Sayyaf hotbed, about 945 kilometres south of Manila.
The US military has had about 500 troops rotating through the southern Philippines since 2002 to train Filipino soldiers how to combat the militants.
The militants are able to draw support from local Muslim communities who feel they have been persecuted for centuries by Christian rulers in Manila.
They also get money for weapons from their successful kidnap-for-ransom ventures.
The group, founded in the 1990s with seed money from Osama bin Laden's Al-Qaeda network, is blamed for the worst terrorist attacks in the Philippines' recent history.
This includes the 2004 bombing of a ferry that left more than 100 dead.