使用下面的示例代码,我想提取每个<<BEGIN>>
和<<END>>
标记之间的所有代码,并将提取的代码附加到数组中,以便日后进一步处理。
<?php
$html = '<<BEGIN>><div>Some text goes here...</div><<END>><<BEGIN>><table border="0"><tr><td>Table cell text goes here</td></tr></table><<END>><<BEGIN>><ul><li>My string</li><li>Another string</li></ul><<END>>';
?>
最终结果需要如下所示:
Array (
[0] => '<div>Some text goes here...</div>'
[1] => '<table border="0"><tr><td>Table cell text goes here</td></tr></table>'
[2] => '<ul><li>My string</li><li>Another string</li></ul>'
)
希望这是有道理的。
非常感谢任何帮助。提前谢谢。
答案 0 :(得分:2)
使用pretg_match_all()函数执行此操作。
<?php
$html = '<<BEGIN>><div>Some text goes here...</div><<END>><<BEGIN>><table border="0"><tr><td>Table cell text goes here</td></tr></table><<END>><<BEGIN>><ul><li>My string</li><li>Another string</li></ul><<END>>';
preg_match_all("/<<BEGIN>>(.*)<<END>>/", $html, $result);
echo '<pre>';
print_r($result[1]);
echo '</pre>';
?>
显示页面的源代码,您将看到所有想要的内容:)(,...)
答案 1 :(得分:1)
您可以从字符串的开头和结尾剥离<<END>>
和<<BEGIN>>
,然后在<<END>><<BEGIN>>
上展开。
$html = substr($html, 9);
$htmlleng = strlen($html) - 7;
$html = substr($html, 0, $htmlleng);
$myarray = explode('<<END>><<BEGIN>>', $html)
(你可以使它更优雅,但它显示你需要完成的任务。)