Police officer Jesse Hartnett, 33, was hit three times in the arm as he sat in his patrol car when the 30-year-old IS-sympathiser opened fire at point-blank range using a weapon stolen from police in October 2013.
"He pledges his allegiance to Islamic State, follows Allah and that is the reason he was called upon to do this," Philadelphia police Captain James Clark told a news conference.
Richard Ross, police commissioner of the northeastern US city, said he was "absolutely amazed" that Hartnett had survived the attack.
The officer, a veteran of five years on the force, returned fire and hit the suspect, who tried to flee on foot, but was quickly arrested.