Philippine President Rodrigo Duterte has declared himself in favour of same-sex marriage in an about turn that will put him on a collision course with the country's powerful Catholic Church.

Speaking at the weekend at a gathering of the LGBT community in his home city of Davao, southern Philippines, he vowed to protect their rights and invited them to nominate a representative to work in his government.

"I am for (same) sex marriage if that is the trend of modern times," he said. "If that will add to your happiness, I am for it."

Mr Duterte was quoted previously in the local media as opposing same-sex marriage, using the gender issue to attack liberal Western countries who allow it, especially those criticising his brutal war against drugs which has killed thousands of Filipino citizens.