The former child star, who played hapless Neville Longbottom in the wizarding films, plays a gigolo in new play Unfaithful, and before he took to the stage, he spoke to a real life escort about what it's like to engage in sex for money.

"One gentleman actually came in and talked to us for an afternoon, which was absolutely invaluable," he tells the London Evening Standard. "He was supposed to come in for an hour and I think we took about two or three and he was just fascinating to talk to."

Matthew initially thought Unfaithful's script was outlandish, but his chat with the gigolo made him realise writer Owen MCCafferty's play was bang-on accurate.

The actor, 27, explains, "I thought Peter's story, when I first read it, was slightly contrived and when I spoke to this guy I was like, 'Wow, did Owen speak to you when he wrote this play?' because it was unbelievable how similar his life was to (my character) Peter.

"He talked about the things they were asked by clients and how they wanted to put him into a box and fix him but he was literally doing it to make some money and he was his own boss, and he was just like Peter."

Unfaithful, which chronicles the story of a married couple who begin straying in search of sexual adventure, runs at London's Found 111 theatre space until 8 October (16).