PSG showed their intent as early as the third minute through an Ibrahimovic shot, but it was well saved by Ivan Kelava.
The Swede had another effort saved by Kelava two minutes later before the Croatian goalkeeper also kept out a Mathieu Bodmer shot on 11 minutes.
Jeremy Menez then missed the target on 20 minutes, before Duje Cop missed a good chance for the home side a few minutes later.
The ball was finally in the net after 33 minutes and it was PSG who got the goal they deserved, Ibrahimovic finishing from a Menez assist.
Ten minutes later it was 2-0, Menez this time netting after good work from Javier Pastore.
PSG continued to push forward after the break and Pastore went wide with an effort shortly after the restart.
Zagreb started to come into the game a little, and Sammir had a couple of sights on goal, but the visiting defence was alert to block his efforts.
Ibrahimovic put a free-kick narrowly wide on 82 minutes as PSG pushed for the goal that would guarantee the points.
They did not need it, however, and ran out comfortable 2-0 winners in Group A.