Image copyright AFP Image caption The Duke of Edinburgh was with the Queen at Trooping the Colour on Saturday

The Duke of Edinburgh is to spend a second night in hospital after being admitted as "a precautionary measure".

Prince Philip is being treated at King Edward VII hospital in central London for an infection arising from a pre-existing condition.

A Buckingham Palace spokeswoman said the 96-year-old would stay in the private hospital overnight, but continued to be in good spirits.

The BBC understands his hospital stay is "not a cause for serious concern".

The duke was with the Queen at Trooping the Colour on Saturday and the opening day of Royal Ascot on Tuesday.

However, after being admitted to hospital on Tuesday evening, he missed Wednesday's State Opening of Parliament, where his place was taken by the Prince of Wales, and a second day at Ascot.

'Getting better'

Prince Charles, on a visit to Finsbury Park following Monday's terror attack, said his father was "getting better".

It is understood the duke was not admitted to hospital as an emergency but, on a doctor's advice, was driven from Windsor Castle on Tuesday evening.

Earlier, BBC royal correspondent Peter Hunt said that, given the duke is being treated for a pre-existing condition, it is safe to assume that he is suffering from the recurrence of the bladder infection he suffered twice in 2012.

He is not bedridden, according to officials, but up and about inside the private hospital.

Prince Philip has spent much of his life in good health, but he was treated for a blocked coronary artery in 2011 and the bladder infection the following year.

Retirement looms

The latter saw him miss much of the Queen's Diamond Jubilee celebrations.

The duke backs healthy eating and exercise.

He drinks moderately, takes the stairs and says he still fits into the uniform he wore on the day he married the Queen, almost 70 years ago.

Prince Philip said in May that he would retire from royal duties this autumn, a move supported by the Queen.