Updated

Cubs starter Chris Volstad might have run out of chances.

Volstad hasn't won in his last 19 starts, going 0-11 since last summer after Chicago lost 8-7 to Philadelphia on Thursday night.

He lasted just two innings, allowing four runs, six hits and three walks. Volstad (0-6) threw 58 pitches, a total Phillies starter Roy Halladay didn't reach until there was one out in the sixth.

"It wasn't much fun," Cubs manager Dale Sveum said. "There's just no life, no command, really none of his pitches. It was not a real good outing at all for the situation we're in."

Halladay threw eight strong innings for his first victory in a month and the Philadelphia Phillies held on for an 8-7 win over Chicago on Thursday night.

Halladay (4-3), who hadn't won since April 16, threw eight strong innings for his first victory in a month. He held the Cubs to three runs and scattered seven hits.

The Cubs made it interesting in the ninth, though it wouldn't have helped the long-gone Volstad break his streak.

Welington Castillo's capped a career night, hitting a two-out, three-run double in the ninth against Phillies reliever Jake Diekman to close the gap to two runs. Phillies closer Jonathan Papelbon came on and allowed an RBI single to Darwin Barney, but got Reed Johnson on a grounder to third for his 11th save of the season.

In addition to the bases-clearing double, Castillo homered and drove in a career-high four runs.

"Welington ended up having a nice eighth and ninth inning there," Sveum said. "That was nice. Big at-bats. Guys worked some walks, did a nice job there."

The Cubs may have lost three straight, but Volstad hasn't won since July 10, 2011. His ERA rose to 7.46 this season and it could have been worse — the Phillies stranded five runners during his two innings.

"Pitches out of zone," Volstad said. "Walks in first and second inning. Not good."

Volstad's run support has been the lowest in baseball during his skid among pitchers with at least 15 starts, but his results have been increasingly poor in recent outings. He's allowed 15 runs over his last 17 innings, with 19 hits, eight walks and just four strikeouts.

"It's a tough situation as a pitcher when you're getting in a slump like that, but that's the challenge of the game," Halladay said about his mound opponent. "It's tough to keep your focus on what it should be. You hate to see that if that guy's on your team or that's you. Not to be callous, but when you're playing those guys, you try and take advantage."

Casey Coleman threw four solid innings in relief of Volstad and, along with Triple-A pitcher Travis Wood, may be a candidate to take Volstad's next turn in the rotation.

"We'll get together as a staff, (Cubs president) Theo (Epstein) and (general manger) Jed (Hoyer), and evaluate the situation, that's for sure," Sveum said. "See what our options are and go from there."

Starlin Castro hit solo homers and drove in two runs for Chicago. David DeJesus had two hits and a run, extending his hitting streak to nine games.

Halladay had lost five of his last six games against Chicago before dominating Thursday's game. He even chipped in with two hits and a run at the plate for his third career multi-hit game.

Carlos Ruiz had his sixth career four-hit game and drove in three runs as the Phillies won a season-best fifth straight game. Jimmy Rollins had two hits, a walk and scored three runs. Hunter Pence added a two-run single that capped the Phillies' three-run second and helped drive Volstad from the mound.

The beleaguered righty was asked if expected a change to be made.

"I don't know how you want me to answer that kind of question," Volstad said. "I'm out there working and pitching, trying to show them that I deserve to be in the rotation. I don't know what kind of answer you're looking for there. It's up to them."

NOTES: C Geovany Soto was a late scratch from the Cubs' lineup due left knee inflammation and was replaced by Castillo. Soto is listed as day-to-day. ... Before the game, the Cubs selected the contract of RHP Blake Parker from Triple-A Iowa and optioned LHP Scott Maine to Iowa. Parker was 1-0 with a 2.08 ERA in the minors and converted all five of his save opportunities. He made his debut in Thursday's game, striking out Ty Wigginton to begin his big-league career, but allowed three unearned runs on his own throwing error in the eighth.