The 300 Spartans is a historical action film released in 2006, directed by Zack Snyder and starring Gerard Butler, Leonidas, and Eva Green. The movie is based on the Battle of Thermopylae, where a small contingent of Spartan warriors led by King Leonidas fought against the invading Persian army.