The ban aims to reduce "harms" on children and will take at least a year to implement, the PM says.