Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
[READ-ONLY] Subtree split of the Symfony DomCrawler Component -- clone into Symfony/Component/ (master at symfony/symfony)

Merge branch '2.7'

* 2.7:
  [RFC][Console] Added console style guide helpers (v2)
  [Validator] Add missing pt_BR translations
  [Translation][Profiler] Added a Translation profiler.
  Add parsing of hexadecimal strings for PHP 7
  [VarDumper] Add filters to casters
  Trim final stop from deprecation message
  [Configuration] improve description for ignoreExtraKeys on ArrayNodeDefinition
  [Validator] Added missing Hungarian translation
  [Validator] Fixed grammar in Hungarian translation
  CS: Unary operators should be placed adjacent to their operands
  CS: Binary operators should be arounded by at least one space
  remove useless tests that fail in php 7
  [Translator] fix test for php 7 compatibility
  [VarDumper] Add VarDumperTestCase and related trait
  Update phpdoc of ProcessBuilder#setPrefix()

latest commit 4bd9dfe480
@fabpot fabpot authored

DomCrawler Component

DomCrawler eases DOM navigation for HTML and XML documents.

If you are familiar with jQuery, DomCrawler is a PHP equivalent:

use Symfony\Component\DomCrawler\Crawler;

$crawler = new Crawler();
$crawler->addContent('<html><body><p>Hello World!</p></body></html>');

print $crawler->filterXPath('descendant-or-self::body/p')->text();

If you are also using the CssSelector component, you can use CSS Selectors instead of XPath expressions:

use Symfony\Component\DomCrawler\Crawler;

$crawler = new Crawler();
$crawler->addContent('<html><body><p>Hello World!</p></body></html>');

print $crawler->filter('body > p')->text();


You can run the unit tests with the following command:

$ cd path/to/Symfony/Component/DomCrawler/
$ composer install
$ phpunit
Something went wrong with that request. Please try again.