A 23-year-old man has been charged after allegedly punching a taxi driver in Baldivis.
The man allegedly started arguing with the driver during a taxi drive in the early hours of Saturday morning before punching him.
The taxi driver was able to stop the car at a service station on Leary Road in Baldivis before the man allegedly assaulted him again.
The victim fell to the ground where he was allegedly assaulted for a third time.
The 65-year-old driver was taken to Royal Perth Hospital by ambulance.
The accused man allegedly crossed the road to another service station where he threw food at staff and smashed an advertising screen.
The 23-year-old man from Falcon has been charged with aggravated robbery, aggravated assault with intent to do grievous bodily harm and robbery.
He is in custody and will appear in the Perth Magistrates Court tomorrow.
Mandurah Crab Fest boasts huge range of free, family friendly entertainment
Fuel prices surge in Perth, Mandurah
Teen boys charged over Mandurah burglaries
Tragic update in search for missing man Robert Snyder
Premier Roger Cook to leave Kwinana electorate, move to Perth
Mandurah Marine Rescue's new vessel named in memory of nun who survived 1959 boating accident
Teen dies in motorbike crash at Waroona Dam
Shark alert issued after whale carcass reported at Preston Beach
Kwinana businesses to refuse serving students during school hours