Walker (13-4) threw 95 pitches over seven innings, giving up seven hits and a walk.
The Royals put Walker in a 3-0 hole straight away, tagging him for five hits in the first inning.
MJ Melendez slashed a two-out, opposite-field shot to left in the top of the second, putting the Royals ahead again, 4-3.
With the blast against the Royals, Schwarber has now homered against all 30 MLB teams in his nine-year career, joining teammate Nick Castellanos, who accomplished the feat earlier this season.
Harper tacked on an insurance run in the seventh with a long sacrifice fly to score Schwarber and Philadelphia led 8-4.
Persons:
Bryson Stott, Alec Bohm, Bryce Harper, Read, Taijuan Walker, Walker, Maikel Garcia, Michael Massey, Matt Beaty, Drew Waters, Zack Greinke, Alec Bohm's, Bryce Harper's, MJ Melendez, Kyle Schwarber, Schwarber, Nick Castellanos, Castellanos, Jonathan Heasley, Harper, Melendez
Organizations:
Philadelphia Phillies, Kansas City Royals, Bank, Phillies, MLB, Philadelphia, National League, Royals, Kansas City, Kansas City's, Thomson
Locations:
Philadelphia , Pennsylvania, USA, Philadelphia