Donald Trump has issued a chilling war threat to Iran as he vowed to retaliate over Houthi rebel attacks in Yemen.