1

文字列には html コンテンツがあります。

例えば:

<ul> 
  <li>....</li>
  <li>....</li> 
  <li>....</li> 
</ul>

このような文字列を配列に変換できるphpの関数はありますか

array(
  [0] => '<ul>',
  [1] => '<li>....</li>',
  [2] => '<li>....</li>',
  [3] => '</ul>'
)

誰でも私を導くことができます。

4

5 に答える 5

0

それは、実際に何をしようとしているかによって異なります。

実際に文字列を行で区切ろうとしている場合は、かなり簡単です。

$array = explode("\n", $htmlString);
foreach ($array as $key => $value) {
    $array[$key] = trim($value);
}

print_r($array); // Use this to dump out the value of $array.

ただし、意味のある方法で HTML を解析しようとすると、それほど簡単ではありません。代わりに、DOMDocument または専用の HTML/XML パーサーを使用することをお勧めします。

その理由については、次をお読みください。

正規表現は、XHTML 自己完結型タグを除く開始タグに一致します

于 2013-04-08T08:47:03.717 に答える
0

SimpleXML を使用して HTML を解析し、後で配列に変換できます

$result = (array) simplexml_load_string($htmlDocument);

http://www.php.net/manual/en/function.simplexml-load-string.php

$ul = <<<HTML
<ul> 
  <li>....</li>
  <li>....</li> 
  <li>....</li> 
</ul>
HTML;

$result = (array) simplexml_load_string($ul);

print_r($result);
于 2013-04-08T08:50:13.760 に答える
0
$a='<ul> 
<li>....</li>
<li>....</li> 
<li>....</li> 
</ul>';


$as = explode("\n", $a);
print_r($as);

それから

Array
(
    [0] => <ul> 
    [1] => <li>....</li>
    [2] => <li>....</li> 
    [3] => <li>....</li> 
    [4] => </ul>
)
于 2013-04-08T08:46:12.900 に答える
0

$strあなたのオリジナルの文字列です。

$array = explode("\n", $str);
于 2013-04-08T08:46:21.387 に答える