PHILADELPHIA — Valtteri Filppula scored the winner with 2:30 left in the second period and Travis Sanheim netted his first career goal to help the Philadelphia Flyers win their fifth straight game, 2-1 over the Buffalo Sabres on Thursday night.

Brian Elliott made 19 saves for the Flyers, whose winning streak comes on the heels of a 10-game losing streak. The winning stretch began with a three-game Canadian trip that started with Coach Dave Hakstol changing the team’s formation to a more defensive-minded 1-2-2 alignment.

Philadelphia has outscored foes 19-8 since.

Ryan O’Reilly scored for the Sabres (8-18-6), who are in the cellar of the Eastern Conference. Buffalo was looking for back-to-back wins for the first time since Oct. 21-24.

Filppula put the Flyers ahead 2-1 after Jakub Voracek set up the play with his eighth assist in the last five games, passing to a cutting Filppula, who shot high over goalie Robin Lehner’s right arm.

BLUE JACKETS 6, ISLANDERS 4: Zach Werenski had a goal and an assist, and Sergei Bobrovsky stopped 21 shots as host Columbus held off a rally by New York.

Markus Nutivaara, Pierre-Luc Dubois, Seth Jones, Nick Foligno and Josh Anderson also scored for the Blue Jackets, who snuffed out a New York comeback attempt in the second and third periods that included a hat trick by wing Josh Bailey.

Columbus (20-11-1) has won 11 of its last 15 and is in a knot of teams battling for supremacy in the tough Metropolitan Division.

CANADIENS 2, DEVILS 1: Tomas Plekanec scored 1:52 into overtime and Montreal won at home to stop a three-game losing streak.

Andrew Shaw scored for the Canadiens in the first period and Carey Price made 31 saves in his ninth straight start.

WILD 2, MAPLE LEAFS 0: Alex Stalock stopped 28 shots to complete his first shutout in three seasons, steering host Minnesota past Toronto.