1

次の HTML 文字列があります。

<div id="mydiv">
<pre>
Some content several lines. 

   Field1: value 2
   Field2: value 2
   Field3: value 3

Some content. several lines.
</pre>
</div>

タグ内のテキストを取得し<pre>てフィールドに分割しようとしているので、 と を使用DomDocument() loadHTML() DOMXPathquery('//pre')て のテキスト コンテンツを取得しています<pre>

を使用var_dumpnodeValueて表示された場合と同じように、書式設定されたテキストを取得します<pre>。なぜそうなのかはわかりませんが、これが何らかの形でテキストをフィールド/値に分割するのに役立つかどうか疑問に思っています。

4

1 に答える 1

2

読みたいだけの場合は、このようにしてください。

<?php
$preStr = ""; //Holds the pre-string.
$preArr = explode("\n", $preStr);
$pairs = array();

foreach ($preArr AS $line) {
  $line = trim($line);

  if (stristr($line, ':')) {
    list($key, $value) = explode(':', $line);
    $pairs[$key] = $value;
  }
}
于 2012-05-10T02:11:51.303 に答える