The team made the announcement late Friday afternoon, saying the Cardinals agreed to trade a conditional 7th round pick in 2016 for the quarterback.
Eagles will get the pick if Barkley is on the roster for six games.
For the Cardinals, Barkley will provide depth behind Carson Palmer and Drew Stanton. Logan Thomas and rookie Phillip Sims were competing for the No. 3 job.
Barkley had been competing with Tim Tebow for the Eagles' 3rd quarterback position behind Sam Bradford and Mark Sanchez.
Barkley was a fourth-round pick in 2013. He completed 30 of 50 passes for 300 yards and four interceptions in four games.
Barkley is the all-time leading passer in Pac-12 Conference and USC history. He had 12,327 passing yards and 116 touchdowns for the Trojans.
Tebow signed with the Eagles in March. He last played in the regular season in 2012 with the New York Jets.
With the way he played in the preseason, Matt Barkley was NOT gonna make this team. This way the #Eagles can get something in return.— Jamie Apody (@JamieApody) September 4, 2015
NFL teams must reduce their rosters to a maximum of 53 players by 4 p.m. Saturday.