Halladay retired all 27 Marlins he faced, striking out 11. There were a few anxious moments, as he had seven counts reach three balls. In six of them, he ran the count full, only to frustrate Florida.
"You've got to take your hat off to the Doc," Marlins manager Fredi Gonzalez said. "That's why he is what he is. That's what they got him for. Maybe, five, 10 years, I'll sit back and enjoy this one. We still wish we could have scored a run. Right now, you've got to tip your hat to him."
Halladay tossed the 20th perfect game in MLB history, and remarkably two have come in this month. On May 9, Dallas Braden of the A's retired every batter he faced from the Rays in Oakland.
The sting, from the Marlins end, is that they lost their fourth consecutive game, a season high. And the lone run came as a result of an error.
"We should still be playing," Gonzalez said. "Deep down inside, we should still be out there. Make an error and they score a run. That's what hurts."
In defeat, Johnson was impressive, striking out six in seven innings. Johnson entered the game with a string of 18 consecutive scoreless innings, and that was snapped at 20, with an unearned run.
"He was perfect," Johnson said. "I need to go out there and be perfect as well. To give my team a chance to win, that's what I needed to do."
Less than an hour after Halladay's gem, home plate and the pitcher's rubber were authenticated by Major League Baseball. While Halladay was giving his postgame interview, the grounds crew was digging up the rubber.
"It's not fun being on the losing end, that's for sure," Johnson said. "You sit back and not enjoy it. But it's impressive, that's for sure."
As an organization, Marlins pitchers have thrown four no-hitters, with the most recent one coming from Anibal Sanchez on Sept. 6, 2006, against the Diamondbacks. That gem was also in Miami.
Prior to Saturday, the Marlins had been no-hit once in their history, by Ramon Martinez of the Dodgers on July 14, 1995. Martinez walked one that day.
Halladay's perfect night was the eighth by a National League pitcher, and first since Randy Johnson of Arizona against the Braves on May 18, 2004, in Atlanta.
Interestingly, Gonzalez was the Braves' third-base coach that day. Now, Gonzalez witnessed perfection from the opposing dugout.
"I have experienced two against us," Gonzalez said. "Now I want one for us."
The way Halladay dominated, it wasn't like the Marlins had many chances. They didn't hit many balls hard. When they did, the Phillies made the plays.
From the first batter, when Chris Coghlan was called out on strikes with the count full, the Marlins questioned home-plate umpire Mike DiMuro's strike zone many times.
"I don't want to talk about the strike zone, because that's a discredit to what he did," Coghlan said. "He was moving the ball all over, to both sides of the plate. Even when he got to 2-2, 3-2, he was able to locate offspeed pitches. He threw a great game."
When the Marlins did make solid contact, it was at a Phillies defender.
"It's a perfect game. What can you say? Tip your hat to him," said Jorge Cantu, who hit the ball hard to third to open the eighth inning.
Cantu, who has played twice in the World Baseball Classic for Mexico, complimented Phillies third baseman Juan Castro, a Mexican native.
"My fellow countryman, he came up big," Cantu said. "They will enjoy this night and remember it forever. For us, it's just a battle for us now. We're in a funk. It's something we've got to figure out, and figure it out soon. We cannot get this deep [in the standings]."
Drama built in the ninth, when Mike Lamb pinch-hit for Brett Hayes. On a 2-1 pitch, Lamb drove a ball deep to center field, but Shane Victorino had plenty of room to collect the first out.
"I hit that pretty good, but in center field here, I was hoping for some wind," Lamb said. "I didn't get enough of it."
Wes Helms pinch-hit for Cameron Maybin, and immediately fell behind two strikes in the count. On a 1-2 pitch, Helms was called out looking. Ronny Paulino, pinch-hitting for Leo Nunez, fell behind 1-2 on a foul ball. The game ended when Paulino bounced to third baseman Castro, who made a nice play in the hole at short, spun and threw to Ryan Howard at first.
Howard snared the ball, ending the game in two hours, 13 minutes, and the Phillies mobbed Halladay on the mound.
In a battle of aces, there was little margin for error. As fate would have it, a miscue proved costly for Florida.
Johnson had a string of 20 consecutive scoreless innings snapped in the third inning, when Wilson Valdez scored an unearned run. Valdez singled with one out, and he raced home from first when Chase Utley's line drive to center field was misplayed by Maybin, who had the ball deflect off his glove.
"It's a tough play," said right fielder Cody Ross, who frequently plays center. "I told Cam, 'You and I are the only ones who know how difficult that one was.' For him, it makes him look bad. I know how difficult it was. It was a tough play, because it's right at you. It's a tough read. You don't know whether to stay where you are or go back. It's tough all around."
Utley dashed to third on the error. Johnson was able to minimize the damage. After issuing an intentional walk to Howard, the right-hander struck out Jayson Werth and Raul Ibanez.
Johnson worked seven innings and struck out six. His 121 pitches established a career high.
A day before Halladay made history, Johnson told reporters he felt the Phillies' ace was the best right-handed pitcher in baseball.
"I said he is the best right-hander in the game, and he kind of proved it," Johnson said.