Miller (10-6) scattered three hits, issued one walk and struck out six for the National League Central-leading Cardinals, who improved to an MLB-best 60-37 with their fourth win in five games.
Trevor Rosenthal tossed a scoreless eighth and Edward Mujica racked up his 29th save as St. Louis maintained a 1 1/2-game divisional lead over Pittsburgh.
Phils starter Jonathan Pettibone (5-4) was saddled with the loss, surrendering three runs on seven hits over five full frames.
Wisconsin business offering 'therapeutic cuddling' forced to close
Video of Victoria’s Secret models trying to 'twerk' hits Instagram