The Associated Press

SAN DIEGO — The Phillies’ West Coast road trip to Los Angeles and San Diego was not particularly long, but boy was it strange and, all things considered, it could have been a lot worse.

The Phillies flew home happy and still in first place Wednesday after rallying from a pair of three-run deficits to pull out a 7-5 victory over the San Diego Padres at Petco Park.

Down, 5-2, in the seventh inning, the Phillies scored three times to get even and then twice more in the eighth to take the lead.

Rookie Adam Haseley, in just his second big-league game, played a central role in the rally, which matched the Phillies’ largest come-from-behind win of the season.

Haseley drew a one-out walk in the seventh off reliever Trey Wingenter and scored on a triple into the right-field corner by Cesar Hernandez.

Craig Stammen came on in relief and Bryce Harper won the showdown by delivering an RBI double. Jean Segura followed with an RBI single to even the game at 5.

In the eighth, Scott Kingery drew a two-out walk and scored from first base when Haseley delivered his first major-league hit, a double that caromed into left field after hitting the cutout in foul territory. Andrew Knapp followed with his biggest hit of the season, a pinch-hit single that pushed the Phillies’ lead to two.

Reliever Seranthony Dominguez had to leave with one out and two on in the eighth with an apparent injury, forcing Hector Neris to record a five-out save.

 

n Mets 7, Giants 0

NEW YORK — Jason Vargas pitched his first shutout in two years, Amed Rosario hit a three-run homer, and New York beat San Francisco despite losing Robinson Canó hours after his return from the injured list.

Canó played for the first time since straining his left quadriceps May 22 but was pulled at the start of the fifth inning with tightness in the muscle. He favored the leg running to first base on a rally-killing double play in the third.

 

n Diamondbacks 3,

Dodgers 2, 11 innings

PHOENIX — Jarrod Dyson hit a tying double in the eighth inning with the help of Chase Field’s new artificial turf, David Peralta had a winning single in the 11th, and Arizona slowed Los Angeles with a win that avoided a three-game sweep.

 

n Marlins 8, Brewers 3

MILWAUKEE — Brian Anderson hit his first career grand slam, and Miami spoiled Jimmy Nelson’s return to the major leagues, beating Milwaukee.

Starlin Castro and Bryan Holaday each drove in two runs as the surging Marlins earned their fourth straight victory.

 

n Cubs 9, Rockies 8

CHICAGO — David Bote drove in a career-high seven runs to lead Chicago to a win over Colorado.

Bote had four hits, including a three-run homer and bases-clearing double to hand the Rockies a second straight loss after ending their season-high eight-game winning streak Tuesday.

AMERICAN LEAGUE

n Yankees 11, Blue Jays 7

TORONTO — Vladimir Guerrero Jr. hit a go-ahead, three-run homer off Zack Britton in a five-run eighth inning, Randal Grichuk had a pair of homers, and Toronto rallied to beat New York and send the Yankees to their first three-game losing streak since early April.

n Red Sox 8, Royals 0

KANSAS CITY, Mo. — Chris Sale tossed a three-hitter for his third career shutout, Jackie Bradley Jr. and Rafael Devers drove in three runs apiece, and Boston trounced woeful Kansas City.

 

n Rays 4, Tigers 0

DETROIT — Charlie Morton allowed five hits in seven innings, extending his unbeaten streak to 20 starts, and leading Tampa Bay to a win over Detroit.

Morton (7-0) hasn’t lost since Aug. 11, and only Clayton Kershaw of the Dodgers, at 21 starts, has a longer active unbeaten streak. Morton struck out eight with no walks and needed just 83 pitches to complete seven innings.

 

INTERLEAGUE

n Nationals 6, White Sox 4

WASHINGTON — Trea Turner homered off Alex Colomé in the ninth inning, and Washington beat Chicago to extend a winning streak to four for the first time since early September.