Hernandez was scheduled to start Thursday's game against the Houston Astros. The Phillies have yet to name a replacement.
The 33-year-old pitched to a 6-8 record with a 3.87 earned run average in 23 games (20 starts) this season.
To take Hernandez's spot on the roster, the Phillies selected the contract of pitcher Sean O'Sullivan from Triple-A Lehigh Valley.
O'Sullivan lasted 5 2/3 innings, giving up eight hits and four runs, in his only start for the Phillies this year.