Используя приведенный ниже пример кода, я хочу извлечь весь код между <<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>'
)
Надеюсь, это имеет смысл.
Будем очень благодарны любой помощи. Заранее спасибо.
Используйте для этого функцию 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>';
?>
Покажите исходный код страницы и вы увидите все, что хотели 🙂 (, …)
Вы можете раздеть <<END>>
а также <<BEGIN>>
от начала и до конца строки, а затем взорваться на <<END>><<BEGIN>>
,
$html = substr($html, 9);
$htmlleng = strlen($html) - 7;
$html = substr($html, 0, $htmlleng);
$myarray = explode('<<END>><<BEGIN>>', $html)
(Вы можете сделать это более элегантно, но это показывает, что вам нужно сделать.)