NEW YORK -- Each day for six weeks or so, Carlos Beltran has felt the pain, a tightness in his strained right quadriceps that had the New York Mets center fielder playing like a shadow of the guy who signed a $119 million contract last winter.
On Tuesday, Beltran woke up pain-free.
Beltran had a double and a triple, punctuating one ally and touching off another, and Mike Piazza drove in three runs with a single and his ninth home run in an 8-3 victory over the Philadelphia Phillies.
"Today, I feel great," Beltran said. "For the first time, I feel nothing in the leg. I hope I feel like this the rest of the season. This was a good day. I was able to execute."
Beltran had used an off-day Monday to have fluid drained from his leg. He held two fingers perhaps six inches apart to show the size of the test tube the fluid filled.
When he awoke Tuesday, the heaviness in his leg was gone. He got a chance to test it in the fifth inning, when he led off with a triple.
"When I hit the ball, I thought it would be caught," he said. "When it bounced off the wall, I told myself go for three. My speed, my legs make me the player I am."
Beltran had doubled home Mike Cameron in a two-run third against Robinson Tejeda (1-1). The triple touched off a four-run rally against reliever Geoff Geary in the fifth.
"I threw pitches that were mistakes, and they got hit," Geary said.
The Mets won for fourth time in five games and drew back to .500 at 38-38 as they started a stretch of 10 straight games against division opponents.
It was the fifth straight loss for the Phillies (39-38) and 10th in 13 games following a 12-1 homestand.
Piazza hit a fifth-inning single that put the Mets ahead 3-1 and homered in the sixth off Amaury Telemaco. With 387 homers, Piazza moved within two of Johnny Bench for 46th place.
"The swing on the single gave me confidence in my next at-bat," Piazza said.
Philadelphia got home runs from David Bell in the eighth and Jason Michaels in the ninth.
"We had a lot of guys on base but we didn't score," Philadelphia manager Charlie Manuel said. "We hit two homers at the end of the game, but it didn't matter much."
Victor Zambrano (4-6) allowed one run, four hits and three walks in five innings, striking out a season-high seven.
Jose Reyes opened the third with his 10th walk of the season, Cameron followed with an RBI double into the left-field corner and Beltran hit a run-scoring double. After walking Cliff Floyd, Tejeda retired the next three batters.
Jim Thome opened the fourth with a walk, moved up on an infield out and reached third on a single by Chase Utley. Bell's second hit scored Thome.
Zambrano got in trouble in the fifth when he hit Michaels for the second time in the game and walked Thome and Pat Burrell with two outs. He ran the count to 3-2 on Utley and then struck him out.
New York scored four runs in the bottom half and turned over a 6-1 lead to the bullpen.
In the bottom of the fifth, Beltran opened with the triple and scored when Piazza bounced a one-out single through the drawn-in infield. Marlon Anderson bounced a single into right field sending Piazza to third. David Wright followed with a two-strike single to right, scoring Piazza and moving Anderson to third. Brian Daubach's infield out scored Anderson.
Jose Offerman, making his debut for the Mets, batted for Zambrano and singled to score Wright.
Zambrano's first-inning strikeout of Bobby Abreu was the 500th strikeout this season for the Mets pitching staff. ... Tejeda threw 11 pitches to Reyes leading off the first for the Mets and 91 pitches in four innings. ... Zambrano threw 101 pitches.