Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork5.2k
[DomCrawler] Add more details about some methods#21034
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:6.4
Are you sure you want to change the base?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Pull Request Overview
This PR enriches the DomCrawler documentation by expanding method descriptions with more detail and adding references to related components and resources.
- Expanded explanations for common Crawler methods to clarify their behavior and usage.
- Added a link to Symfony’s CSS Selector component documentation.
- Introduced an external reference for “XPath expression.”
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
We should probably also make it clear which methods are meant to be called on a single-node Crawler because they ignore other nodes than the first one (any method where the implementation rely on using$this->getNode(0)
basically).
We have several places guaranteed to be dealing with single-node crawlers in the API:
- the callback of
each
- the callback of
reduce
- the return value of
eq
(and its shortcut) for a valid position (for an invalid position, it will be an empty crawler for which those methods relying on the first node will throw an exception)
``first()`` | ||
Firstnode. | ||
Selects the firstnode (equivalent to ``eq(0)``). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
UsingSelects
in all those descriptions is confusing to me. We have different kinds of methods in this lists:
- methods creating a Crawler containing only a subset of the nodes of the current Crawler instance (
eq
and all its shorcuts, but alsoreduce
which actually filters the current instance andslice
) - methods returning a new Crawler with a different selection (whichalso includes the
filter
andfilterXpath
methods, despite their name, as they are doing a mix of matching the existing nodes or finding their descendants)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
You are right, but this doc is intesting/dom_crawler
(we also havecomponents/dom_crawler
) so this is probably an internal detail not relevant in this page. 🤔
Uh oh!
There was an error while loading.Please reload this page.
After merging#21031 I thought that we could improve some explanations of some methods with more details and references.