The "Marjory Stoneman Douglas High School Public Safety Act," which takes its name from last month's mass shooting in which 17 people including 14 students were killed, passed the legislature's lower house a day after clearing the senate.
It will now be sent to Governor Rick Scott to sign.
The Republican has not indicated whether he would veto the law, but he has previously expressed opposition to US President Donald Trump's call to arm teachers.
America's long moribund gun control debate was revived by survivors of the Parkland shooting.
The bill raises the minimum age to purchase all firearms from 18 to 21, bans modification devices that make a semi-automatic weapon fully automatic, and increases mental health funding.
It also includes a voluntary "guardian program" named after Coach Aaron Feis who was slain in the Parkland attack, which is intended to "aid in the prevention or abatement of active assailant incidents on school premises" by allowing some school employees to be armed.
The program is mainly aimed at staff such as coaches and school personnel, with teachers eligible if they have military or law enforcement experience.
Bringing more guns into school has been a controversial idea, but lawmakers defended the bill.
"I understand the angst about the guardian program but I can't help but think about the coaches who literally ran in as shields to protect their students... while guys with guns were standing outside," said Republican member Chris Latvala.
"If there are school personnel that want to go to the training to help shield the students and protect them, they should have the opportunity," he said.