Antonio Halili, was shot at a flag-raising ceremony south of Manila. AFP

A Philippine mayor on President Rodrigo Duterte's list of narcotics-linked officials was shot dead yesterday at a town flag-raising ceremony.

Antonio Halili, 72, was hit in the chest by a single shot fired from a distance, unleashing chaotic scenes during the event at the town hall in Tanauan, south of Manila.

Onlookers screamed and the mayor's security squad opened fire at the spot where the shooter was believed to have been. But the shooter escaped as Halili was taken to hospital, where he was pronounced dead. Town police chief Renato Mercado said the shot was fired from 150 meters - pointing to a trained sniper.

Halili had compared himself to Duterte, appearing to share the president's position against crime and illegal drugs.

But in 2017 his name surfaced on a "narco-list" - people allegedly linked to drugs - issued by Duterte. Halili lost control of the police, but he denied ties to drugs.

Authorities have said more than 4,200 suspects have been killed in the war on drugs. But rights groups say the death toll is three times higher and that police and vigilantes murder people without proof of links to drugs.

Three other mayors on the "narco-list" have been shot dead - one inside a jail cell.