Arizona starting pitcher Daniel Hudson helped his own cause, roping a two-run double in the second inning off of Oswalt. The D-backs played small ball, with Gerardo Parra, Stephen Drew, and Ryan Roberts all driving in runs off of singles.
The Phillies showed signs of life on offense in the sixth inning. Ben Francisco blooped a single to lead off the inning, and after Ibanez lined out, Pete Orr was able to get on base. With runners on first and second, Brian Schneider struck out.
Ross Gload pinch-hit for Kyle Kendrick and drove in Ben Francisco with two outs. Hudson was in dangerous territory, but he was able to strike out Shane Victorino to end the inning.
Ryan Roberts wasn't about to let the Phillies close in, hitting a solo home run off of Mike Zagurski to give the D-backs a three-run lead. Justin Upton drove in Kelly Johnson on a single in the seventh.
When the ninth inning rolled around, things looked pretty good for Arizona -- until Ben Francisco hit a two-out, two-run homer off of David Hernandez to bring the game within two runs.
That's where the threat ended, and the Diamondbacks escaped with a 7-5 victory.