Harper walked off the field on his own accord, displaying some blood on the left side of his nose.
Cabrera then hit the next batter, Didi Gregorius, leading to warnings for both benches. Phillies manager Joe Girardi came to complain to plate umpire Chris Segal and got kicked out of the game.
Matt Joyce ran for Harper, and Gregorius remained in the game. Cabrera allowed an RBI single to Andrew McCutchen the next at-bat before being relieved. Per MLB rules, Cabrera had to face one more batter before Cardinals manager Mike Shildt was able to pull him from the game.
Harper grounded out and struck out in his first two at-bats. Gregorius doubled and struck out in his two at-bats.
The Associated Press contributed to this report.