Cardinals beat Marlins 3-2 in 106-degree heatSt. Louis Cardinals starting pitcher Kyle Lohse delivers in the first inning of a baseball game against the Miami Marlins, Saturday, July 7, 2012, in St. Louis. (AP Photo/Tom Gannam)
ST. LOUIS (AP) -- The Miami Marlins have to be happy they've seen the last of Kyle Lohse.
The right-hander isn't the hardest thrower in the St. Louis Cardinals' rotation, getting the job done by staying ahead of the hitters and keeping the ball down with good movement.
He's had the Marlins' number this season.
Lohse worked seven innings of three-hit ball in a 3-2 victory on Saturday, beating Miami for the third time this season.
''As far as a pitch-maker goes, I think he's as good as anybody right now,'' manager Mike Matheny said. ''It's just not trying to overwhelm people with stuff as much as making pitches.
''It looked like he was commanding the ball well enough to get them to do what he wanted them to do.''
Tony Cruz hit a go-ahead two-run triple in the fourth for the Cardinals, who have won five of seven and snapped the Marlins' three-game winning streak. Allen Craig had three hits and Skip Schumaker added an RBI single in the fourth for the Cardinals.
The 106-degree heat didn't seem to bother Lohse.
''I just tried to do my best to block it out,'' Lohse said. ''The only thing you can do is keep the team off the field by throwing strikes, getting ahead of guys and trying to limit the damage.''
Marlins starter Carlos Zambrano didn't mind it, either.
''Yeah, it was hot,'' Zambrano said. ''I come from Venezuela, so it doesn't bother me.''
David Freese was hit by a pitch twice, walked and singled to reach base safely in all four trips.
Justin Ruggiano hit a two-run home run for the Marlins, who missed a chance to climb back to .500. Zambrano (4-7) needed 102 pitches to get through five innings and Giancarlo Stanton lasted just two before leaving with right knee soreness, the injury that had kept him out four straight starts.
Stanton, the Marlins' lone representative in the All-Star game, will undergo arthroscopic surgery Sunday in Miami that manager Ozzie Guillen said could sideline him a month.
''He's a big bat,'' Guillen said. ''This is our power hitter, the RBI guy. I think everybody out there has got to step it up a notch and try to cover the space.
''We feel bad for the kid, but we can't feel sorry for ourselves.''
Jose Reyes, Hanley Ramirez and Carlos Lee, the top three in the Miami lineup, were a combined 0 for 11 with a walk and are 1 for 22 with two walks the first two games of a three-game set heading into the All-Star break.
Lohse (9-2) is 3-0 with a 2.08 ERA in three starts against Miami, allowing nine hits in 21 2-3 innings, and found his stride after Ruggiano's homer with one out in the third. The Marlins had two base runners the last five innings on a walk and a fielding error by Craig at first that was wiped clean when Reyes was caught flat-footed, getting picked off to end the fifth.
Lohse has won his past three starts overall and has worked seven or more innings six straight times. He threw first-pitch strikes to 19 of 26 hitters.
''I think I've really figured out what it takes to be successful and that's going out and locating, not trying to overpower anybody, using my defense,'' Lohse said. ''You look at how I'm getting ahead of guys and then pitching off that, that's kind of been the key to my first half.''
Jason Motte allowed a pair of two-out singles in the ninth before getting Donovan Solano to foul out to end it for his 20th save.
Stanton singled to start the second and with one out Ruggiano hit his sixth homer, a drive to left-center to put the Marlins ahead. Ruggiano has 18 hits during a 10-game hitting streak.
The Cardinals stranded four runners the first three innings before getting to Zambrano in the fourth with the first four batters reaching safely. Schumaker hit an RBI single and scored when Cruz followed with an opposite-field drive into the right field corner that scooted past Ruggiano's attempt to cut off the ball.
Cruz has started the past two games in place of All-Star Yadier Molina, who returned to Puerto Rico on bereavement leave following the death of his wife's grandfather.
Zambrano lost for the first time at seven-year-old Busch Stadium after entering 6-0 in seven starts with a 1.73 ERA, the lowest among active pitchers at the ballpark. He lost for the second time in nine career decisions overall in St. Louis.
''I know I've pitched good, I didn't know it was the first loss,'' Zambrano said. ''There's always a first time and unfortunately it was today.''
Marlins reliever Wade LeBlanc struck out the Cardinals' 3-4-5 hitters in the seventh and allowed one hit in three scoreless innings.
NOTES: Zambrano has hit eight batters, among the league leaders. ... Matt Holliday has hit in 10 straight after singling in the fifth. ... Lohse has allowed a homer in each of his past four starts. ... Carlos Beltran didn't get the ball out of the infield in three at-bats against Zambrano and is 4 for 27 overall against the right-hander. ... The Cardinals are 11-28 when their opponent scores first.