An AirAsia flight has been forced to turn back to Perth after an engine reportedly failed and an explosion was heard mid flight.

Flight D7237 departed Perth Airport's international complex at 6.50am on Sunday morning bound for Kuala Lumpur, with 359 passengers on board.

The AirAsia flight was bound for Kuala Lumpur.

The decision to turn back was made as the flight passed over Shark Bay, about one hour and 15 minutes into the flight.

Passengers said the captain announced that there appeared to have been an engine seizure on the left side, and they would be returning to Perth.