The 36-year-old, who won four Premier League titles with Chelsea, revealed his decision on Twitter.
He wrote: “This is my 20th season as a professional player and it is 20 years since I signed my first professional contract, so it feels like the right time to announce that I will retire at the end of this season.”
The Czech, who arrived in the Premier League with Chelsea in 2004 and moved to Arsenal in 2015, added: “Having played 15 years in the Premier League and won every single trophy possible, I feel like I have achieved everything I set out to achieve.
“I will continue to work hard at Arsenal to hopefully win one more trophy this season, then I am looking forward to seeing what life holds for me off the pitch.”
Download our app and read this and other great stories on the move. Available for Android and iOS.