Odubel Herrera went 4 for 5 with a home run and three RBIs to help the second-place Phillies remain five games behind Atlanta in the NL East.
San Diego has lost nine of 11 and dropped a game behind Cincinnati in the race for the second NL wild card. The Reds beat Miami 3-1 to complete a four-game sweep.
Hoskins, placed on the injured list Aug. 10 with a left groin strain, hit a solo shot to straightaway center field off reliever Ryan Weathers (4-6) in the fourth and another long drive to left in the fifth against Miguel Diaz. Despite missing time, the first baseman leads the Phillies in home runs (26) and RBIs (70).
Gibson (9-5) gave up one run and six hits. He worked out of jams in each of the first three innings and then cruised for the next five.