Five reasons the Eagles beat the 49ers on Sunday:

The opponent

Might as well start with the obvious one. Yeah, the 49ers aren't very good. Five of their first seven losses were by three points or fewer, but as I wrote the other day, 0-7 is 0-7 no matter how you slice it.

To make matters worse, they suffered a slew of injuries during the game that further weakened them. They lost both of their starting offensive tackles  —  Joe Staley (eye) and Garry Gilliam (knee)  —  in the second quarter. Gilliam already was subbing for Trent Brown (concussion). So the Niners had to throw untested rookie Eric Magnuson out there against the Eagles defense.

They also lost safety Jimmie Ward (fractured forearm) on the second series of the game. Their best wide receiver, Pierre Garcon, played just 32 snaps because of a neck injury. And defensive tackles Solomon Thomas and D.J. Jones both left the game with knee injuries. Other than that, they were the picture of health.

To Doug Pederson's credit, he made sure his team didn't take the winless Niners lightly. The Eagles struggled offensively for much of the game. They converted just 4 of 14 third-down opportunities, and averaged just 3.6 yards per carry. They struggled with the Niners' blitz. Carson Wentz completed just 2 of 7 passes for 9 yards and was sacked twice when the Niners sent extra rushers.

But they played hard, gained momentum late in the first half, and never looked back.

Third-down defense

Jim Schwartz's defense has done an excellent job of getting off the field on third down this season, and the unit continued that trend Sunday. The Niners converted just 3 of 15 third-down opportunities against the Eagles.

Rookie C.J. Beathard was just 5 for 12 for 34 yards on third down. He saw a third-down pass picked off by cornerback Jalen Mills and returned for a touchdown. One of the Eagles' four sacks of Beathard   —   by defensive tackle Fletcher Cox   —   also came on third down.

The Niners had just four third downs of four yards or fewer and converted only one of those. The Eagles even thwarted a third-and-1 quarterback sneak when defensive tackle Beau Allen blew up the play.

The Eagles' overall passing numbers this season aren't great. They're in the bottom third of the league in passing yards allowed (256.8 per game) and touchdown passes allowed (13). But they've shined on third down and have been able to get off the field. Opponents have averaged just 61.7 plays per game against them, 10th fewest in the league.

A year ago, the Eagles finished 19th in third-down defense, allowing opponents to convert 40 percent of their third-down opportunities. Through eight games this season, they are third (31.0). Mills' interception was his third third-down pick of the year and the team's sixth, the most in the NFL.

Opponents have a 47.1 passer rating against the Eagles on third down. Just 23 of 45 third-down completions (51.1%) against the Eagles have resulted in first downs.

Welcome back, Mychal

No one ever has questioned Mychal Kendricks' ability. He is one of the most athletic linebackers in the NFL.

Probably should've made the Pro Bowl in his second season in 2013. But then, he started thinking too much instead of just playing, and the next thing you know, a linebacker with 4.4 speed was being taken off the field in nickel sub-packages because the coaches couldn't trust him to be where he was supposed to be and do what he was supposed to do.

Now, he's back to thinking less and relying on his downhill skills and is having a terrific season.

He made it clear on the Niners' first possession Sunday that he was going to be a factor in the game. Stopped Carlos Hyde for no gain. Two plays later, he used his great speed to come up and pressure rookie quarterback C.J. Beathard on a rollout and forced an incompletion.

On the next play, a pitch to Matt Breida, Kendricks denied Breida the edge and forced him to turn inside, where cornerback Jalen Mills dropped him for a one-yard loss.

With middle linebacker Jordan Hicks lost for the season with an Achilles injury, Kendricks played a season-high 79 percent of the defensive snaps Sunday and was a beginning-to-end factor, both against the run and the pass.

In the second quarter, he made a nice tackle in space on wide receiver Pierre Garcon, limiting him to no yards after the catch following a 4-yard completion. He notched his second sack of the season late in the second quarter when he came up and tackled Beathard for no gain after he was flushed from the pocket on a first-down play. And he had a nice breakup on a second-and-9 pass to Breida early in the fourth quarter, reaching in front of the running back and knocking the pass away with his right arm.

Nowhere to run

The Eagles have given up more than 100 rushing yards in a game just once this season. That was in their 27-20 Week 2 loss to the Chiefs, who rushed for 112 yards against them, 53 of which came on a Kareem Hunt touchdown run.

On Sunday, they held the 49ers to 94 yards on 24 carries. Forty of those 94 yards came on scrambles by quarterback C.J. Beathard. The Eagles held the Niners' running backs to 54 yards on 18 carries.

San Francisco had just four rushing first downs and two runs of 10 yards or more (both 12 yards). Eight of the Niners running backs' 18 rushing attempts resulted in either zero or negative yards.

Of course, it helped that the Niners lost both of their starting tackles in the second quarter. But hey, the Eagles are playing without their nine-time Pro Bowl left tackle, Jason Peters. Those are the breaks.

The Eagles are first in the league in run defense, holding opponents to 70.1 yards per game on the ground. But the Niners were only the second team this season to run the ball more than 19 times against them. It will be interesting to see how the Eagles do against a team that can stay committed to the run for four quarters.

The pass interference 

Wide receiver Torrey Smith was officially targeted twice by Carson Wentz on Sunday, and, for the second game in a row, didn't have a catch.

But the pass-interference penalty he drew on Niners cornerback Dontae Johnson late in the second quarter was a major momentum-shifting moment.

With two minutes left in the half, the Eagles were letting the Niners hang around and gain confidence. A 40-yard Jake Elliott field goal had been the only points in the game.

Facing a third-and-15 at the San Francisco 25, the Eagles were in 11 personnel (1RB, 1TE, 3WRs) with Smith lined up wide to the left and tight end Zach Ertz in the left slot.

Johnson was playing outside leverage on Smith. As Smith cut inside of him on a post route, Johnson stumbled and ended up grabbing Smith's jersey and getting flagged, giving the Eagles a first down at the 1-yard line

On the very next play, Wentz hit Ertz for a touchdown to give the Eagles a 9-0 lead. On the Niners' very next possession, Eagles cornerback Jalen Mills picked off a pass intended for Pierre Garcon and returned it 37 yards for a touchdown.

Game, set, match.