Peralta, the No. 2 prospect in the Brewers' system as rated by MLB.com, gave up three runs on five hits and four walks while striking out three, and he was lifted in the seventh inning after allowing the first two hitters to reach.
"Really happy with the way he threw," Brewers manager Ron Roenicke said. "That first outing, you don't know what's going to happen. You think it's either going to go one [way] or the other. He's going to be really good like he was, or he's going to be wild and get hit around. I'm really happy with him."
Peralta struggled with command early on, giving up a leadoff single and issuing a one-out walk in the first. The righty was able to escape the inning after he got Giancarlo Stanton to ground into a double play at third.
"I threw a good two-seam to Giancarlo Stanton to get a double play," Peralta said. "I was happy to get out of the inning without allowing a run."
The close call in the first provided Peralta with a sigh of relief, and he settled in after that. The double play at third marked the first of eight straight batters retired by Peralta, who gave much of the credit for his performance to catcher Martin Maldonado. The two have been batterymates for the last three seasons in the Minors.
The only run that crossed the plate while Peralta was in the game came in the fifth. Carlos Lee led off with a drive just fair down the right-field line for a double, and he scored two batters later on a John Buck single.
Peralta worked with a lead most of the night thanks to three big homers from Milwaukee, which upped its National League-leading total to 173.
Weeks launched a two-run shot 418 feet to right field in the third inning against Marlins starter Nathan Eovaldi to get the scoring started.
Milwaukee added to its lead in a four-run seventh when Weeks hit his second homer of the night, another two-run shot to left-center field, this time off Marlins rookie Tom Koehler, who was making his big league debut.
It was Weeks' sixth career multi-homer game, and his first since July 18, 2010, against the Braves. The four RBIs tied a career high.
"Those balls, man they were hit," Roenicke said. "The good thing is he's really seeing the ball well. He's laying off that breaking ball down, and when he's doing that and you're an opposing pitcher, you're in trouble."
After Aramis Ramirez reached on a single two batters later, Hart deposited another Koehler offering over the wall in left-center field to stretch Milwaukee's lead to five runs. Ramirez tweaked his lower back on the play and was pinch-hit for in the ninth, but he said he expects to be fine.
That lead shrunk in the bottom of the seventh, when the Marlins chased Peralta from the game. He walked Justin Ruggiano and gave up a single to Buck, and the two came around to score against Kameron Loe, who hit Donnie Murphy with a pitch and surrendered three straight RBI singles.
The third single, while scoring a run, gave a bit of momentum back to the Brewers. After Murphy crossed the plate, Greg Dobbs rounded third and Bryan Petersen took a turn at second base. Marlins third-base coach Joe Espada, who was close to home at that point, threw his hands up to halt the runners.
Dobbs made it back to third, but Petersen was too far from second and got caught in a rundown before being tagged out at third base for the first out of the inning.
"Aggressive mistake, I guess," Petersen said. "I think that was one of those kind of instinct plays in baseball, where you think one thing and another thing happened. Just an aggressive mistake."
Miami made it a one-run game on a Reyes sacrifice fly before Jim Henderson ended the frame and staved off the comeback.
"Henderson did a nice job there," Roenicke said. "We got ourselves in trouble. He came in, didn't throw many pitches and got a couple outs."
Hart put the Marlins away in the ninth with a two-out, two-run double to tie his season high with four RBIs, last accomplished Aug. 16 against the Phillies.
The win brought the Brewers to within two games of .500 for the first time since May 4, and it inched them to within 6 1/2 games of the Cardinals for the second NL Wild Card spot.
"Obviously .500 would be, as bad as we were, a big step, but we're still right there," Hart said. "We're trying to make it interesting."