/** * @param $selector * @return ApistFilter */ public function filterNodes($selector) { $this->guardCrawler(); $rootNode = $this->method->getCrawler(); $crawler = new Crawler(); $rootNode->filter($selector)->each(function (Crawler $filteredNode) use($crawler) { $filteredNode = $filteredNode->getNode(0); foreach ($this->node as $node) { if ($filteredNode === $node) { $crawler->add($node); break; } } }); return $crawler; }
/** * Get value from content by css selector * * @param ApistMethod $method * @param Crawler $rootNode * @return array|null|string|Crawler */ public function getValue(ApistMethod $method, Crawler $rootNode = null) { if (is_null($rootNode)) { $rootNode = $method->getCrawler(); } $result = $rootNode->filter($this->selector); return $this->applyResultCallbackChain($result, $method); }