Pinch-hitter Eliezer Alfonzo hit a bases-clearing double in the seventh that put San Francisco ahead with its first runs of the game, and the Giants scored three more in the eighth for a 6-2 victory over Philadelphia on Friday night.
"I know they're going to walk Barry and it's up to us to do something about it," manager Bruce Bochy said. "It's up to us to come through, and our guys did."
Matt Morris (4-1) beat the Phillies for the second straight year following a four-start winless stretch featuring a pair of no-decisions and two losses. He pitched seven innings, Brad Hennessey worked the eighth and Armando Benitez pitched a perfect ninth.
Just when Jamie Moyer seemed headed for another gem, Alfonzo spoiled it all with his first career pinch-hit in seven tries. Moyer, staked to a 2-0 lead in the first, had been rolling until running into trouble in the seventh and losing his shutout.
"I got it too high on him (Alfonzo)," Moyer said. "The game changed on one pitch. I've seen it happen. All you can do is stay focused and try to make pitches."
Bonds drew his 24th walk to start the inning and Bengie Molina followed with a single before being lifted for pinch-runner Todd Linden. After Pedro Feliz flied out, Omar Vizquel singled up the middle to load the bases for pinch-hitter Ray Durham.
Durham flied out to shallow right and Bonds stayed put on third, then Alfonzo hit for Morris and came up big for the second straight day after getting three hits with a triple and an RBI on Thursday despite entering in the fifth. Bonds scored his 1,500th and 1,501st runs as a Giant.
"He's a dangerous hitter. They're still not pitching to him," Morris said. "He's a special player. He just has an abundance of credit. He has the ability to go big fly every time.
Bochy planned to talk to Bonds in the morning about playing in Saturday's afternoon game against Phillies starter Jon Lieber, who has allowed four homers to Bonds in the slugger's seven hits off the right-hander.
Mark Sweeney singled in the eighth for his 144th career pinch-hit, moving him past Greg Gross and into sole possession of fourth place on the career list -- one behind Smoky Burgess.
Vizquel, batting down in the order for the second straight day as Bochy moved Randy Winn up to No. 2, added a two-run single in the eighth and Durham followed with an RBI single.
Moyer (3-2) didn't allow a hit until Winn's one-out single to center in the fourth, retiring the first 10 San Francisco batters in order. On April 29, the soft-tossing lefty carried a no-hitter into the seventh on the way to a 6-1 win over Florida.
Bonds -- stepping in to chants of "Let's go, Barry!" -- finished 0-for-2. He was intentionally walked in the eighth, his 10th intentional free pass.
"We had two outs," Phillies manager Charlie Manuel said. "Why take a chance on him hitting a home run when we could pitch to somebody else?"
Winn reached with two outs in the sixth on a two-base fielding error by left fielder Pat Burrell, who had the routine fly ball in his glove but couldn't hold onto it, the first runner Moyer allowed past first base.
"When a man pitches that good, we need to win the game," Manuel said. "But Morris had a good game. We thought we'd score some runs off him. We had our chances."
Morris allowed Chase Utley's RBI groundout and a sacrifice fly by Ryan Howard in the first before settling in.
Shane Victorino doubled in the first and also singled in the third and then stole second. He swiped another bag in the seventh for his 11th of the year, the second straight night he had two stolen bases.
The Giants' defense saved a run in the sixth on Aaron Rowand's single. Center fielder Dave Roberts made a perfect relay throw to second baseman Kevin Frandsen, who quickly hit Molina and he tagged out Howard.
Frandsen was part of another nice sequence moments later, when Wes Helms grounded into an inning-ending double play to third and Frandsen got Rowand before a quick throw to first that beat Helms. Morris pumped his fist while walking off the mound. But Frandsen booted a grounder by Jimmy Rollins for an error in the seventh.
Alfonzo is slated to start at catcher Saturday. He said he's always ready.
"I'm excited I made big contact there and helped my team," said Alfonzo, the starting backstop for much of 2006 after Mike Matheny's concussion. "I'm doing good things. ... I put in my mind I'm playing every night."
The Giants posted a message on the main center-field scoreboard in the middle of the sixth saluting the Golden State Warriors for their upset of the top-seeded Dallas Mavericks in the first round of the NBA playoffs, using the team's playoff mantra "We Believe."
The Phillies placed closer Tom Gordon on the 15-day DL, retroactive to Wednesday, with rotator cuff inflammation and purchased the contract of RHP Yoel Hernandez from Triple-A Ottawa. ... San Francisco recalled RHP Scott Munter from Triple-A Fresno and designated 1B Lance Niekro for assignment. ... The Giants celebrated Willie Mays' 76th birthday two days early with a cake for the Hall of Famer on the field before first pitch.