The suspect is identified as Dominique Fallins.
The incident took place around 11:35 a.m. Thursday at the intersection of 32nd Street and Susquehanna Avenue.
Officer Joseph Kochmer and his partner of the 22nd District pulled over the suspect in a Chevy Impala for a traffic violation.
"The male inside - he was the only one inside - was being very evasive with his answers. When they went to run the tag, it came back to another vehicle. It was an Ohio tag," Philadelphia Police Deputy Commissioner Richard Ross said.
Officer Kochmer ordered the suspect out of the car.
Police say he gunned it, but the wheels spun out on some ice.
Kochmer pulled his weapon.
Ross said the suspect grabbed the officer's gun and tried to pull him inside the vehicle.
"That's when he was able to pull off successfully going westbound on Susquehanna and dragging the officer up the street for a good ways," Ross said.
Kochmer was able to fire a shot shattering the driver's side window.
His leg was run over by the vehicle as the suspect fled the scene.
Kochmer's partner rushed him to Temple University Hospital in stable condition. He has since been treated and released.
A manhunt ensued for the suspect.
A couple of hours later, police located the Impala on the 2400 block of Napa.
Driver window shattered from officers bullet. choppers overhead looking for suspect. pic.twitter.com/2hQCzoApOh— Chad Pradelli (@chadpradelli) January 8, 2015
Helicopters hovered above and the suspect was captured around the corner a short time later.
Fallins will be charged with Attempted Murder, Aggravated Assault, Fleeing Police, and related offenses.
Kochmer is a 5-year veteran of the force. He is engaged to be married this year.
His brother is a rookie officer with 26th police district.