With the win, the Ducks earned a season sweep of the Flyers, outscoring their Eastern Conference opponent 9-4 in two games. Anaheim also improved to 29-32-12 (70 points) on the season, sixth in the Pacific Division.
Trevor Zegras scored twice, including his fifth career game-winning goal, becoming the third Ducks rookie to reach 20 goals in their first full NHL season. Zegras has six points in his last six games and ranks third among NHL rookies in scoring and assists.
Sonny Milano, Zach Aston-Reese and Derek Grant also scored for Anaheim while Jamie Drysdale and Andrej Sustr notched two assists apiece.
Drysdale became the fourth Ducks rookie defenseman to eclipse 30 points, joining Cam Fowler, Francois Beauchemin and Hampus Lindholm. Drysdale co-leads first-year blueliners in games played (72) and ranks second in scoring (4-26=30) and assists.
Making his first career start against the club that selected him 45th overall in the 2012 NHL Draft, Anthony Stolarz made 30 saves to earn his career-best 11th win of the season.
Travis Sanheim, Ronnie Attard and Ivan Provorov scored for Philadelphia. Martin Jones made 29 saves.
The first period was all Flyers, especially in the game's opening minutes as the home team jumped out to a two-goal lead before the first television timeout.
Philly went ahead less than two minutes into the action when Sanheim's shot from the top of the circle trickled through Stolarz and just over the goal line. Attard doubled the lead 48 seconds later with his first NHL goal, getting a point bid through traffic after the Flyers cleanly corralled an offensive zone faceoff.
The Ducks flipped the script in the second period though, controlling the play throughout the middle frame and outscoring the Flyers 3-0 to take the lead into the third.
Milano put the Ducks on the board three minutes into the period, spinning away from a Flyers defender and potting the rebound from Jamie Drysdale's point shot over Jones' outstretched leg pad.