1f762c7723
* 2.1: [Yaml] fixed default value Added Yaml\Dumper::setIndentation() method to allow a custom indentation level of nested nodes. added a way to enable/disable object support when parsing/dumping added a way to enable/disable PHP support when parsing a YAML input via Yaml::parse() fixed CS [Process] Fix docblocks, remove `return` from `PhpProcess#start()` as parent returns nothing, cleaned up `ExecutableFinder` fixes a bug when output/error output contains a % character [Console] fixed input bug when the value of an option is empty (closes #6649, closes #6689) [Profiler] [Redis] Fix sort of profiler rows. Fix version_compare() calls for PHP 5.5. Removed underscores from test method names to be consistent with other components. [Process] In edge cases `getcwd()` can return `false`, then `proc_open()` should get `null` to use default value (the working dir of the current PHP process) Fix version_compare() calls for PHP 5.5. Handle the deprecation of IntlDateFormatter::setTimeZoneId() in PHP 5.5. removed the .gitattributes files (closes #6605, reverts #5674) [HttpKernel] Clarify misleading comment in ExceptionListener Conflicts: src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_style.html.twig src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php src/Symfony/Component/Form/Tests/Util/PropertyPathTest.php src/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php src/Symfony/Component/Process/Process.php |
||
---|---|---|
.. | ||
Field | ||
Tests | ||
.gitignore | ||
CHANGELOG.md | ||
composer.json | ||
Crawler.php | ||
Form.php | ||
FormFieldRegistry.php | ||
LICENSE | ||
Link.php | ||
phpunit.xml.dist | ||
README.md |
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();
Resources
You can run the unit tests with the following command:
$ cd path/to/Symfony/Component/DomCrawler/
$ composer.phar install --dev
$ phpunit