The Phillies offense failed to score more than three runs again but that was all they would need with their ace on the mound.
Roy Halladay pitched seven innings in his first start since his perfect game, working out of trouble to help the Phightins beat the NL-West leading Padres 3-2 on Friday night.
Shane Victorino homered and scored the go-ahead run on Jayson Werth's two-out, bases-loaded walk against Mat Latos (5-4) in the fifth.
Halladay (8-3) allowed 10 hits and walked one, but held San Diego to two runs in his first game since his gem at Florida last Saturday. The right-hander received a standing ovation from the sellout crowd of 45,080 as he walked in from the bullpen.
Jose Contreras and J.C. Romero combined to pitch the eighth, and Brad Lidge looked sharp as he tossed a perfect ninth inning for his second save.
The Phillies managed only five hits and struck out 11 times. They were coming off a 2-7 trip to NL East rivals New York, Florida and Atlanta.
Halladay singled with one out in the third and scored on Victorino's homer to right field.
Umpire Jim Joyce, whose blown call at first base cost Detroit pitcher Armando Galarraga a perfect game on Wednesday, was at third for the first game of the series. He was greeted with a smattering of boos during pregame introductions.
Same teams square off Saturday night down at the ballpark.
Fan, follow and download: Get the latest from NBCPhiladelphia.com anytime, anywhere. Follow us on Twitter, Facebook and NBC Philadelphia. Sign up for our breaking news newsletter. And, get breaking news delivered right to your mobile phone -- just text PHIBREAKING to 639710 to sign up. (Message and data rates may apply.)