HTML DOM解析器是否可以提取其源代码的行号?

时间:2016-06-14 16:01:50

标签: php simple-html-dom

example

我想提取行号,而不是源代码 例如:

E:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\DTExec.exe" /DTS "\<ssisPkgName>" /DECRYPT <pkgPass> /MAXCONCURRENT " -1 " /CHECKPOINTING OFF 

element2 是否也可以提取行号?

1 个答案:

答案 0 :(得分:0)

您可以使用DOMNode::getLineNo(),其工作原理如下:

 <?php
// XML dump for below example
$xml = <<<XML
<?xml version="1.0" encoding="utf-8"?>
<root>
    <node />
</root>
XML;

// Create a new DOMDocument instance
$dom = new DOMDocument;

// Load the XML
$dom->loadXML($xml);

// Print where the line where the 'node' element was defined in
printf('The <node> tag is defined on line %d', $dom->getElementsByTagName('node')->item(0)->getLineNo());
?>

以上示例将输出:

  

标记在第3行中定义。

仅供参考:几年前,由于libxml2错误,这种方法停止了工作,但我做了一个在线小提琴并且它有效。