ATLANTA — With their playoff hopes uncertain, Atlanta's struggling batters picked a bad time to get no-hit by Cole Hamels and three Philadelphia relievers.
"You feel like you've hit a good stride," manager Fredi Gonzalez said. "And all of a sudden you go through a stretch where you score one run in 27 innings, and lucky enough to win one of those games."
Hamels and the Phillies bullpen combined on the season's fourth no-hitter, blanking the Atlanta Braves 7-0 Monday.
Atlanta lost 4-0 two days earlier to Miami and beat the Marlins 1-0 Sunday. The Braves, who had won 11 of 15, began Monday 1½ games back in the NL wild-card race.
But nobody could solve Hamels and the Philadelphia bullpen. Jason Heyward drew two walks and stole three bases. Atlanta was otherwise punchless.
"He walked a few guys on and he gave us an opportunity," Justin Upton said after going 0 for 3 with two strikeouts. "We should have executed in that situation, but we didn't and it just kind of steamrolled from there."
It was all the more unusual in that Hamels left the game with his bid intact after six innings. He was fine with the decision, too, having already thrown 108 pitches at a hot afternoon at Turner Field.
"Just understanding the situation, every time I went out there I was battling control issues," Hamels said. "I wasn't getting ahead of guys. Walking the leadoff hitter will put you in a lot of trouble, and it does. It builds up your pitch count."
Hamels (8-6) struck out seven, matched a season high with five walks and hit a batter.
Relievers Jake Diekman, Ken Giles and closer Jonathan Papelbon each pitched a perfect inning to finish off the gem. A smiling Hamels watched from the bench as they finished off what he started.
Clayton Kershaw and Josh Beckett of the Dodgers and Tim Lincecum of the Giants threw no-hitters earlier this year.
Right fielder Marlon Byrd foiled the Braves' best bid for a hit. With runners on second and third in the third inning, Byrd raced in and toward the line to make a diving catch on Chris Johnson's slicing liner to end the inning.
Johnson came close again in the ninth with a grounder up the middle. Shortstop Jimmy Rollins ranged behind the bag to make the play.
Phil Gosselin then lined out to first baseman Darin Ruf, who had taken over in the ninth for Ryan Howard, to end the game.
Hamels singled and scored in the sixth inning, and got pats of congratulations in the dugout after pitching the bottom half. He was on deck in the seventh, but a decision already seemed to be made when he was pulled for pinch-hitter Grady Sizemore.
The 30-year-old Hamels already had impressive accomplishments on his resume — in 2008, he was the MVP of the World Series and the NL championship series, and he's a three-time All-Star.
Diekman struck out two and Giles fanned three before Papelbon took over.
Roy Halladay pitched the previous two Phillies no-hitters — he threw a perfect game against the Marlins in 2010, then threw a no-hitter the same year in the playoffs against Cincinnati.
It was 12th no-hitter in Phillies history. The last pitcher to no-hit the Braves was Ubaldo Jimenez of Colorado in 2010.
Philadelphia manager Ryne Sandberg knew Hamels was tired and ready to come out of the game. Their discussion was a quick one.
"He was pretty well spent there," Sandberg said. The early innings had something to do with it. The stressful innings, stranding the runners at second and third a couple of times, but he wasn't going to go nine."
Ben Revere tripled and drove in a career-high five runs. The leadoff man started the day with 15 RBIs this season.
Julio Teheran (13-10) gave up five hits and five runs — two earned — with four walks in 6 2-3 innings. He left after Revere's bases-loaded triple made it 5-0 in the seventh. Shortstop Andrelton Simmons' error set up the runs.
Philadelphia has won Hamels' last five starts against the Braves. He owns a 0.97 ERA and four victories in that span.
"Past the third inning he started throwing the ball where he wanted to," Johnson said. "With that cutter and that sinker both in, you didn't know which way it was going to go, whether it was going to go in on your hands or back towards the plate."
Phillies: RHP Kyle Kendrick (7-11) starts Tuesday vs. Atlanta. He has a 6.55 ERA over his last nine starts. ... Braves LHP Mike Minor (6-8) is winless with two losses and a 2.77 ERA in two starts against Philadelphia this year.