0

ファイル文字列を処理するツールを作成していますが、ノードが見つかった行番号を取得する必要があります。それは、私はこれを持っています:

$dom = new DOMDocument('1.0');
$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
foreach ($xpath->query("//text()") as $q) {
    // $line = WHAT???
    $strings[trim($q->nodeValue)] = $line;
}

配列に格納している文字列がどの行から始まるかを知る必要があります$strings。入手できますか?

4

1 に答える 1

1

DOMNodeオブジェクトには、getLineNo()これを返す関数があります。あなたの場合、それは:DOMTextから拡張するオブジェクトです。DOMNode

foreach ($xpath->query("//text()") as $q) {
    $line = $q->getLineNo();
    $strings[trim($q->nodeValue)] = $line;
}

その機能をまだ利用していない場合は、PHP5.3にアップグレードする必要があるかもしれません。

于 2012-06-19T11:08:30.803 に答える