У меня есть эта строка, где я положил все вводные теги в (array) $opened
и все закрывающие теги в (array) $closed
, например, так:Как найти и заменить путем сравнения двух PHP массивов
'<div>
Test
</div>
<div>
<blockquote>
<p>The quick</p>
<blockquote>
<p>brown fox <span>jumps <span>over <img src="#" /> the'
Результаты этих двух массивов:
$opened =
array(8) {
[0]=> string(3) "div" // Need removed
[1]=> string(3) "div"
[2]=> string(10) "blockquote"
[3]=> string(1) "p" // Need removed
[4]=> string(10) "blockquote"
[5]=> string(1) "p"
[6]=> string(4) "span"
[7]=> string(4) "span"
}
$closed =
array(2) {
[0]=> string(3) "div"
[1]=> string(1) "p"
}
мне нужно как-то сказать:
Найти первое вхождение $closed[0]
(который "div"
) в $opened
массиве и удалить его из $opened
массива, а затем повторите, пока все $closed
метки ("div
и "p"
) нет были удалены с верхней части $opened
.
Вы используете один и тот же фрагмент кода я дал в другой вопрос? : p –
Нет, медитер. Я буду использовать/изучать материал DOM позже. =) У меня есть собственный, очень специфичный RegEx, который я использую, это похоже на ваше предложение без DOM. – Jeff
Что вы пытаетесь сделать? Какой-то разбор разметки? – Gumbo