php - Simple HTML DOM Parser - Get all plaintex rather than text of certain element -


i tried solutions posted on question. although similar question, it's solutions aren't working me.

i trying plain text outside of <b> , should inside <div id="maindiv>.

<div id=maindiv>      <b>i don't want text</b>      want text </div> 

$part object contains <div id="maindiv">. tried this:

$part->find('!b')->innertext; 

the code above not working. when tried this

$part->plaintext;

it returned of plain text

i don't want text want text 

i read official documentation, didn't find resolve this:

query:

$selector->query('//div[@id="maindiv"]/text()[2]') 

explanation:

//               - selects nodes regardless of position in tree  div              - selects elements node name 'div'  [@id="maindiv"]  - selects divs having attribute id="maindiv"  /                - sets focus div element  text()           - selects text elements  [2]              - selects second text element (the first whitespace)                     note! actual position of text element may depend on                    preservewhitespace setting.                     manual: http://www.php.net/manual/de/class.domdocument.php#domdocument.props.preservewhitespace 

example:

$html = <<<eof <div id="maindiv">      <b>i dont want text</b>      want text </div> eof;  $doc = new domdocument(); $doc->loadhtml($html);  $selector = new domxpath($doc);     $node = $selector->query('//div[@id="maindiv"]/text()[2]')->item(0); echo trim($node->nodevalue); // want text 

Comments

Popular posts from this blog

Perl - how to grep a block of text from a file -

delphi - How to remove all the grips on a coolbar if I have several coolbands? -

javascript - Animating array of divs; only the final element is modified -