The Phillies were looking for their first four-game sweep in St. Louis in 99 years.
Halladay (4-5) departed with a 3.98 ERA after an outing that matched the second-shortest outing of his career. The team said the two-time Cy Young award winner was taken out as a precautionary measure and that he'll be re-evaluated in the next few days.
Since winning his first three starts, Halladay is 1-5 with a 5.08 ERA in eight games, and the Phillies have lost seven of his last eight starts.
Adam Wainwright (4-5) allowed a run on seven hits in six innings, thriving in 90-degree heat for his second straight dominant outing. Molina left due to dehydration during an at-bat in the fifth.
Carlos Beltran hit his NL-leading 15th home run for St. Louis and rookie Matt Adams hit the first of his career.
PIRATES 10, CUBS 4
PITTSBURGH (AP) — The Chicago Cubs lost their 12th straight game as Pedro Alvarez, Andrew McCutchen and Garrett Jones homered for Pittsburgh.
Erik Bedard (3-5) allowed two hits in six shutout innings. Pittsburgh completed its first three-game sweep at PNC Park since Sept. 17-19, 2010.
The Cubs' skid is their longest since they started out 0-14 in the 1997 season. Matt Garza (2-3) took the loss.
The lowest-scoring team in baseball, the Pirates set a season high for runs and matched a season best by winning their third consecutive game.
REDS 7, ROCKIES 5
CINCINNATI (AP) — Brandon Phillips hit a three-run homer to help the Cincinnati Reds outslug Colorado in a game that set a record for Great American Ball Park with nine home runs.
Mat Latos (4-2) allowed five hits — and all of them were solo home runs. Colorado's Carlos Gonzalez hit two of them, and Troy Tulowitzki, Michael Cuddyer and Dexter Fowler also took the Cincinnati starter deep.
Toronto native Joey Votto, Jay Bruce and Todd Frazier homered for Cincinnati, which finished 6-1 on a seven-game homestand during which 29 home runs were hit — also a ballpark best.
Aroldis Chapman pitched 1 2-3 innings for his third save to help the Reds go 6-1 on the homestand.
Jamie Moyer (2-5) gave up seven hits and a season-high seven runs in five innings.
GIANTS 3, MARLINS 2
MIAMI (AP) — Melky Cabrera tied a career high with four hits, including a home run, and scored all three runs for the San Francisco Giants to help Matt Cain beat Miami.
Cabrera went 4 for 4 to raise his average to .369 and has 73 hits, most in the majors. He also stole two bases.
Cain (5-2) won his fourth start in a row. Santiago Casilla gave up one hit in 1 1-3 scoreless innings for his 12th save in 13 chances.
Ricky Nolasco (5-3) allowed three runs in seven innings.
METS 2, PADRES 0
NEW YORK (AP) — R.A. Dickey struck out 10 and reached double digits for strikeouts in consecutive games for the first time in his career and the New York Mets held San Diego scoreless for the second straight day.
Dickey (7-1) struck out 11 Pirates on Tuesday. He is the first Mets pitcher to have back-to-back games with at least 10 Ks since Pedro Martinez did it in May 2006.
A day after Johan Santana pitched a four-hitter, Dickey combined with two relievers on a shutout. Tim Byrdak got two outs to finish the eighth and Frank Francisco pitched the ninth for his 13th save in 15 chances.
Daniel Murphy had an RBI single and Mike Baxter scored on a passed ball as the Mets took advantage of a wild Edinson Volquez (2-5).
DODGERS 5, ASTROS 1
LOS ANGELES (AP) — Jerry Hairston Jr. got a career-high five hits, Chris Capuano won again and the Los Angeles Dodgers beat Houston.
Matt Treanor put the Dodgers ahead for good with a home run in the fourth inning that deflected off centre fielder Justin Maxwell's glove as he made a leaping attempt in left-centre field.
Capuano (7-1) pitched two-hit ball over seven innings and struck out eight. The 33-year-old left-hander improved to 5-0 at home with a 1.36 ERA.
Tony Gwynn Jr. chipped in with a pair of RBI singles as the NL West leaders won for the sixth time in eight games despite missing injured regulars Matt Kemp, Mark Ellis, Juan Uribe and Juan Rivera.
Hairston went 5 for 5 with a double, scoring a run and driving in a run.
J.A. Happ (4-4) tied a career high by striking out 10.
DIAMONDBACKS 4, BREWERS 3
PHOENIX (AP) — Aaron Hill doubled twice and singled as the Arizona Diamondbacks rallied past Milwaukee.
Arizona won a series at home for the first time since a season-opening, three-game sweep of San Francisco.
Bryan Shaw (1-2) threw one pitch to induce an inning-ending double play in the sixth to get the win. Jose Veras (3-2) took the loss.
NATIONALS 7, BRAVES 2
Bryce Harper hit his second homer in two days, Gio Gonzalez gave up only one hit in seven innings and the Washington Nationals beat struggling Atlanta to complete a three-game sweep.
Washington's first sweep at Turner Field in three years left the Braves with a seven-game losing streak, their worst skid since dropping nine straight in 2010.
At 29-18, the Nationals moved 11 games over .500 for the first time since their 2005 inaugural season in Washington.
Gonzalez (7-1) struck out 10 and outpitched Brandon Beachy (5-3) in the matchup of ERA leaders.