Saliba enjoyed a breakthrough campaign at the Emirates Stadium last season, making 33 appearances in all competitions and scoring three goals to help Arsenal finish second to Manchester City in the Premier League.
The 22-year-old joined Arsenal from Saint Etienne in the summer of 2019 but was loaned immediately to the same club before further loan spells at Nice and Olympique Marseille.
Saliba's performances for Arsenal saw him make the France squad for the FIFA World Cup in Qatar.
He had a year left on his previous contract at Arsenal but is now tied to the club until the summer of 2027.
"I was born in north Paris, but became a man in north London," Saliba said in a video message for Arsenal fans on the club's Twitter account.
"I know it must have been strange for you. I show up, a kid you have never heard of and then keep going away to different clubs [on loan] before you get to see me play.
"But I know now this was the best plan for me, and last summer when I came back to the club and became a pivotal part of the team words cannot describe how I feel here, how you [fans] make me feel.
"Having the confidence of the boss and the staff, and then having your love and support made me feel 10 feet tall - so thank you Gooners, this if for you. We are together and let's keep moving."
Arsenal manager Mikel Arteta added: "To have William extend his contract with us was something we have wanted to do for a long time. William proved last season just how good and how important he is to our squad.
"The ability he has at his young age of just 22 is exciting, and there is of course so much more room for development with any player at this stage of their career. We're looking forward to continuing to work with William in the years to come."
Saliba has changed his jersey number from 12 to 2 for the upcoming season.