Zack Wheeler got a tough luck no-decision Friday night, but was solid in what could be a breakthrough outing.

He held the Marlins to a run through six strong innings, allowing just four singles and three walks, while striking out 10. It was only his second career double-digit strikeout performance, after striking out a dozen last Aug. 15 at San Diego.

“He pitched as good as he has all year,’’ said manager Terry Collins, who praised Wheeler’s ability to fight through and avoid the big inning in the Mets’ eventual 4-3 win.

Wheeler struck out the side in the third — Henderson Alvarez on heat, Christian Yelich on a changeup and Marcell Ozuna on a curveball — and limited Miami to just one run in the fifth rather than letting the trouble grow. He got in trouble in the sixth, but fanned Derek Dietrich and Adeiny Hechavarria to escape the jam.

“You know you’ve got to make big pitches at certain points in the game. That’s what I did,” said Wheeler, who hasn’t won at Citi Field in six starts dating to last Aug. 20, despite a 3.44 ERA.