public function testNameParse() { list($name, $aka) = CrawlDmmTask::parseNameAndAka('中野美奈'); $this->assertEquals('中野美奈', $name); $this->assertEquals([], $aka); list($name, $aka) = CrawlDmmTask::parseNameAndAka('酒井ちなみ(紫葵)'); $this->assertEquals('酒井ちなみ', $name); $this->assertEquals(['紫葵'], $aka); list($name, $aka) = CrawlDmmTask::parseNameAndAka('黒木麻衣(花野真衣、SHIHO)'); $this->assertEquals('黒木麻衣', $name); $this->assertEquals(['花野真衣', 'SHIHO'], $aka); }
private function getCasts(Crawler $links) { $staffs = []; $links->each(function (Crawler $link, $i) use(&$staffs) { if (!preg_match('/id=(\\d+)/', $link->attr('href'), $matches)) { return; } $staff = new Staffs(); list($name, $aka) = CrawlDmmTask::parseNameAndAka(trim($link->text())); $staff->name = $name; $staff->aka = $aka ? implode(',', $aka) : null; $staff->id = $matches[1]; $staffs[] = $staff; }); return $staffs; }