It happened around 10:00 p.m. at 46th and Walnut streets.
Police say the cabbie picked up a man along Baltimore Avenue. He soon announced a holdup.
A struggle ensued and the driver was shot in the hand before the suspect fled.
Medics responded and rushed the driver to the Hospital of the University of Pennsylvania for care. He is stable.
There is no word if the suspect got away with any money or valuables.