Updated

Juan Pierre hit a go-ahead, two-run single in the seventh inning to back Cole Hamels, and the Philadelphia Phillies beat the San Diego Padres 4-1 on Friday night for their 13th straight victory at Petco Park.

Hamels (2-1) improved to 7-2 with a 2.22 ERA in 12 career starts against his hometown Padres. In his last four starts against San Diego, he's 4-0 with a 0.60 ERA.

Shane Victorino hit a solo home run in the eighth, his second. Victorino was hit by a pitch on the left elbow earlier in the at-bat, but umpire Dan Bellino ruled that he leaned into the pitch.

After allowing a run in the fifth, Hamels was assured of the victory thanks to a three-run rally in the seventh. Hamels allowed one run and six hits in six innings, struck out four and walked one.

Edinson Volquez held Philadelphia to two hits through six scoreless innings before allowing three straight singles to open the seventh and load the bases. Andrew Cashner relieved Volquez (0-2) and allowed Brian Schneider's RBI single to right bring in Victorino with the tying run. With one out, Pierre singled to right to score Ty Wigginton and Freddy Galvis.

Jonathan Paplebon pitched the ninth for his fifth save in five chances.

Victorino's homer was off Australian left-hander Josh Spence.

The Padres haven't beaten the Phillies in San Diego since Aug. 16, 2008. Overall, the Phillies are 24-4 at Petco Park since it opened in 2004.

Cameron Maybin tripled to the gap in right-center leading off the fifth. The Padres had stranded seven runners to that point, but after Chase Headley struck out, Maybin scored on Jesus Guzman's grounder to shortstop.

Hamels was called for two balks for the first time in his career, but the Padres weren't able to capitalize.

In the second, after rookie Andy Parrino was forced at third on Volquez's bunt, Hamels' balk moved Orlando Hudson to third and Volquez to second with two outs. Hamels then hit Chris Denorfia with a pitch before striking out Maybin.

In the fourth, Yonder Alonso singled and Hamels was called for another balk, by second base umpire Bob Davidson. Hamels, who appeared to have stepped off the rubber, angrily yelled at Davidson. Alonso took third on Orlando Hudson's single but was thrown out at the plate when Hamels flipped Volquez's bunt with his glove to catcher Brian Schneider.

Volquez allowed three runs and five hits in six innings, struck out five and walked three.

NOTES: Hamels' two balks were the most by a Phillies pitcher since Paul Quantrill also had two balks on July 15, 1995, at Montreal. ... Hamels had three career balks coming into the game, all from last season. ... Rookie Andy Parrino started in place of SS Jason Bartlett. ... The four-game series continues Saturday night when Roy Halladay (3-0, 1.17) is scheduled to start for Philadelphia against Padres LHP Cory Luebke (1-1, 3.71).