The deal will pay Schultz $2.25 million per season, a source told ESPN.com's Pierre LeBrun.
Schultz has two goals and 13 points in 55 games for the Flyers this season. He has already recorded his highest point total in a season since 2010-11, when he had 17 points.
Schultz, 32, originally signed with the Flyers as a free agent on July 2. He previously played for Minnesota, Edmonton and Columbus. He split the 2013-14 season between the Oilers and Blue Jackets, posting five assists in 69 games.
He was drafted in the second round (33rd overall) by the Minnesota Wild in the team's first NHL entry draft in 2000. He appeared in 743 games for the Wild over 10 seasons from 2001 to 2011 and remains the franchise's career leader in games played. Schultz had 26 goals and 102 assists for 128 points with the Wild.
Information from The Associated Press was included in this report.