Worley (5-5) allowed two runs on eight hits in 6 2-3 innings. He struck out two and walked two, worked out of a bases-loaded jam in the fifth and benefited from an especially strong outing by All-Star closer Jonathan Papelbon who quelled a late Rockies rally by getting five outs for his 19th save in 21 chances.
With one out in the eighth, reliever Jake Diekman hit Tyler Colvin with a pitch and walked Jordan Pacheco. Brian Sanchez relieved and Wilin Rosario hit a three-run homer, pulling the Rockies to within 6-5.
But Papelbon came on to get Josh Rutledge on a grounder and struck out pinch-hitter Jason Giambi to end the eighth. The Phillies gave him some breathing room in the top of the ninth with Shane Victorino's RBI triple and an RBI single by Chase Utley, his third hit of the game.
And Papelbon then closed out the game by retiring the top of the Rockies' order 1-2-3, pumping his fist when he fanned Carlos Gonzalez for the final out.
Worley wriggled out of a rocky fifth. Pinch-hitter Jonathan Hererra hit a one-out single to left, and after Dexter Fowler popped out, Marco Scutaro doubled. Gonzalez was intentionally walked to load the bases, bringing up Michael Cuddyer.
Cuddyer, who hit two grand slams earlier in the season, worked the count full before swinging and missing at a 90 mph fastball that Worley got past him to end the threat
In the sixth, Worley delivered at the plate, driving in a pair of runs with two-out double. Juan Pierre began the rally with a two-out single and stole second. Mike Fontenot, who struck out in each of his first two at bats, was then walked intentionally to get to Worley, who drove reliever Adam Ottovino's offering into the right field corner for his second hit of the game.
He beat out an infield single in the second, tumbling to the ground in a heap after taking an awkward step as he crossed the bag and losing his balance. It was his first hit in 22 at bats this season.
The Phillies jolted Jeremy Guthrie (3-9) with a four-run first. With one out, Victorino doubled and scored on Utley's single. Ryan Howard walked and Ruiz followed with a drive that cleared the fence in left-center for his 14th homer of the season.
Guthrie allowed four runs on seven hits in 4 2-3 innings in losing a sixth consecutive decision, including one as a reliever. He struck out three and walked two.
Rutledge, who had two hits and two RBIs in his major league debut the night before, scored the Rockies first run in the third when he walked, went to second on a sacrifice and scored on Fowler's single. One out later, Gonzalez scored Fowler with a double off the center field wall.
NOTES: Phillies pitcher Roy Halladay, on the disabled list since late May with a strained muscle on his right side, threw a bullpen session Saturday. No final decision has been announced, but there's a chance he could be activated Tuesday and start the game against the Los Angeles Dodgers. ... RHP Jhoulys Chacin, who went on the DL with inflammation in his pitching shoulder on May 6, threw 25 pitches in a bullpen session earlier Saturday. Next up for Chacin is 30-pitch simulated game on Tuesday. ... Guthrie last won on May 31, beating Houston.