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 teacher who raped student to remain on bail
Man charged after allegedly exposing himself to girl on Transperth bus in Lakelands
Fire rips through Golden Bay home
Firefighters battle bushfire near Nambeelup
Alcoa Children's Festival cancelled due to severe weather
Man charged over crime rampage from Furnissdale to Kwinana
Damaging winds forecast for Harvey, Dwellingup, Pinjarra
Southern suburbs man claims $15 million Lotto win after eventually answering life-changing call from Lotterywest
Two women taken to hospital after Kwinana Freeway crash