The red hot Galaxy have won four in a row and are off to their best start (5-1-0) since 2010.
L.A. goalkeeper David Bingham made two saves and earned the clean sheet.
The Union had their four-game unbeaten streak and three-game winning streak snapped.
In the 27th minute, Ibrahimovic headed home a cross from Jorgen Skjelvik for a 1-0 Galaxy lead. It was the third straight game in which Ibrahimovic has scored.
In the 32nd minute, a foul was called on Auston Trusty in the box against Ibrahimovic. After a lengthy video review, the call was upheld, and Ibrahimovic drilled the penalty kick into the left corner in the 36th minute. He now has six goals this season, including five in his last three games.
Philadelphia's Alejandro Bedoya had a strong scoring opportunity in the 54th minute, but fired a shot from inside the box off the crossbar.
The Union maintained early offensive pressure through the 60th minute, yet still trailed by two goals. Bedoya later ripped a shot just wide in the 64th minute.
In the 69th minute, Romain Alessandrini nearly gave the Galaxy a 3-0 lead, but his shot deflected off Trusty and out of bounds for a corner kick.
The Union went down to 10 men when Trusty was handed a red card in the 76th minute for his second yellow card.
Once the Union went down a man, the Galaxy controlled possession for the most part and sealed their fourth consecutive victory.
The Union also played short-handed briefly in the first half, after forward Marco Fabian went down in the 17th minute and appeared to tweak his left ankle. Fabian returned after four minutes, but was then replaced by Fafa Picault in the 23rd minute.
Zlatan pulls the strings in another LA Galaxy win
Two goals from Zlatan Ibrahimovic powered LA Galaxy past Philadelphia Union, extending their winning streak to four matches.
Zlatan opens the scoring for LA Galaxy
Major League Soccer: Zlatan Ibrahimovic (27') LA Galaxy 2-0 Philadelphia Union