preg_replace, str_replace и substr_replace не работают в особых условиях
У меня есть следующий код: этот код находит все html-теги в строке и заменяет их на [[0]], [[1]], [[2]] и т. Д. (По крайней мере, это предназначено, но не работает) ;
$str = "some text <a href='/review/'>review</a> here <a class='abc' href='/about/'>link2</a> hahaha";
preg_match_all("|<[^>]+>(.*)</[^>]+>|U",$str, $out, PREG_OFFSET_CAPTURE);
$count = 0;
foreach($out[0] as $result) {
$temp=preg_quote($result[0],'/');
$temp ="/".$temp."/";
preg_replace($temp, "[[".$count."]]", $str,1);
$count++;
}
var_dump($str);
Этот код находит все теги в строке и заменяет их на [[0]], [[1]] и [[2]] и так далее. я использовалpreg_match_all
с PREG_OFFSET_CAPTURE. Выход изpreg_match_all
как и ожидалось. Тем не мение,preg_replace
, substr_replace
, а такжеstr_replace
не работают при замене тегов[[$count]]
, Я перепробовал все три метода замены строк, и ни один из них не работает. Пожалуйста, укажите мне в правильном направлении. Может ли что-то в php.ini вызвать это? Заранее спасибо.