2016-11-16 69 views
0

我有這樣的代碼strip_tags($html,'<a>,<br>')這條除<a><br>PHP用strip_tags:僅允許第一個標籤

我怎樣才能去除所有標籤<a>首先之外的所有標籤?有沒有像strip_tags($html,'<a>[0],<br>')

HTML例如:

<div> 
    <p> 
     <a href="#">I want this link</a><br/> 
     Something in new line with unwantend <a href="#">link</a><br/> 
     Lorem ipsum bla bla...<br/> 
     Unwanted <a href="#">link</a> once more. 
    </p> 
</div> 
+1

你將不得不寫一些代碼來做到這一點,也許一個普通expresssion – 2016-11-16 01:53:50

+0

@Dagon好的謝謝。我想也許有更短的做法。 –

+2

@Dagon [小馬,他來](http://stackoverflow.com/a/1732454/2370483) – Machavity

回答

1

從原來的答案編輯:

可以使用的preg_replace和循環

$ret = preg_match_all('/<a>/',$html,$matches); 
    for ($a = count($matches); $a>=1 ;$a--){ 
     $str = preg_replace('/<a>/',"",$str,$a); 
    } 
+0

那不是什麼OP是問 – 2016-11-16 02:36:20

+0

是的,向後讀它。 – bart2puck

+1

所有好的...... :-)只是要小心有多危險通過正則表達式與HTML混合可以 – 2016-11-16 03:53:25