DETROIT (AP) -- By the time Jhonny Peralta broke the game open with a sixth-inning grand slam, the Detroit Tigers were already well on their way to another victory.
For that, they could thank the Philadelphia Phillies, whose eighth straight loss might have been the ugliest of the bunch.
Peralta's slam capped an eight-run sixth for Detroit, and the Tigers overcame Miguel Cabrera's ejection in a 12-4 win over the collapsing Phillies on Sunday.
Cabrera was tossed while batting with the bases loaded in the third and manager Jim Leyland was ejected, too.
Detroit still got plenty of additional chances against a Philadelphia team that all but handed the game away with errors and walks.
''We got some benefits today,'' Leyland said. ''They struggled a little bit defensively, and a little bit throwing strikes.''
In the sixth, the Tigers scored eight runs on only two hits. The Phillies made three errors and walked three batters in the inning.
Rick Porcello (8-6) allowed three runs and seven hits in six innings to win his fourth straight start.
Reliever Jake Diekman (0-1) took the loss, but he was hardly the only culprit for Philadelphia.
The Phillies had already blown a 3-0 lead when Diekman came on to start the bottom of the sixth in a tie game.
He allowed a leadoff walk to Andy Dirks, then threw wildly to second for an error when Alex Avila bunted. Ramon Santiago's bunt single loaded the bases, and after Austin Jackson's flyout to shallow right field, Don Kelly's flyball to left was dropped by rookie Steve Susdorf for another error.
Kelly was credited with a sacrifice fly, the Tigers took a 4-3 lead and the bases remained loaded.
Luis Garcia replaced Diekman, and Matt Tuiasosopo - who had come in earlier for Cabrera - drew a walk to force in a run. Prince Fielder followed with a grounder to first, but Darin Ruf's throw home was off the mark for yet another error.
Victor Martinez's bases-loaded walk made it 7-3, and Peralta followed with his 10th homer of the year and fourth career grand slam.
All eight runs in the inning were unearned.
The Tigers have won seven of eight, and they lead the AL Central by three games over Cleveland. Detroit outscored Philadelphia 24-5 in the three-game sweep.
''It's hard, man. It's tough,'' Phillies catcher Carlos Ruiz said. ''We're not playing good baseball right now. It's embarrassing to see that.''
Cabrera's spot in the order came up three times with the bases loaded, but he was only around for one of them - and not for long. Down 1-0, the Tigers had the bases full with nobody out in the third. Kelly popped out on a 3-1 pitch, bringing Cabrera to the plate.
After two called strikes, the Triple Crown winner said something to plate umpire Chad Fairchild, although not in a demonstrative fashion. Cabrera was tossed, and Leyland was thrown out too when he came out for what ended up being a lengthy argument.
''I called strike one and he began to argue balls and strikes. I warned him to stop, but after the second pitch, he began to argue balls and strikes again, and was removed from the game,'' Fairchild said.
''Jim came out and asked for an explanation, which I gave to him. He then began to argue balls and strikes, and since he had left his position and argued balls and strikes, he was removed from the game.''
Cabrera was charged with a strikeout when Philadelphia starter Jonathan Pettibone threw strike three to Tuiasosopo - since Tuiasosopo was facing a two-strike count when he replaced Cabrera.
''I said the call was horrible and he threw me out,'' Cabrera said. ''I think it's not time to blame anybody - to blame the umpires, to blame somebody else. You want to compete and you want to do something special and try to win games. I'm kind of upset at how he threw me out, but that happens.''
Fielder fouled out to end the inning.
Fielder came to the plate three times with the bases loaded, including during Detroit's three-run fifth. The Tigers started that inning with consecutive singles by Santiago, Jackson, Kelly and Tuiasosopo, scoring their first run on Tuiasosopo's hit. Fielder and Martinez followed with RBI groundouts to tie it at 3.
Pettibone allowed three runs and seven hits in five innings. He also walked four.
Detroit had at least two runners on base in seven of its eight innings at the plate. The Tigers finished the game 6 of 20 with runners in scoring position. They had 12 plate appearances with the bases loaded, the team's most since at least 1974, according to STATS.
Cabrera's spot came up with two on in the seventh. At that point, Hernan Perez was batting there, and he singled to drive in another run.
NOTES: Fairchild was also the plate umpire in Detroit's July 11 game against the Chicago White Sox, when Leyland and Detroit reliever Luke Putkonen were ejected. ... Susdorf's fifth-inning double was his first career hit. ... Both teams are off Monday. Detroit hosts Washington on Tuesday night, with RHP Anibal Sanchez (8-7) facing Nationals RHP Stephen Strasburg (5-8). The Phillies host San Francisco. Philadelphia LHP John Lannan (2-4) takes on Giants LHP Barry Zito (4-7).