-2
다음 코드와 같이 preg_replace()
을 사용하고 있습니다.PHP는 preg_replace에서 출력하지 않습니다.
$p = preg_replace('/#[\d\w]+/', '<a href="http://'.$_SERVER['HTTP_HOST'].'/search/term:'.str_replace('#', rawurlencode('%23'), '${1}').'">${1}</a>', $p);
$p will be a string like '(#ben)'
그러나 $1
을 사용하면 아무 것도 출력되지 않습니다. $1
을 잘못 사용하고 있습니까?
해야 출력이 :
preg_replace('/(#[\d\w]+)/', ...
^ ^
그것이 this demo에서 작업을 참조하십시오 : <h2>Bens (<a href="http://example.com/search/term:#ben">ben</a>) cat</h2>
$ 1이 (가) 반환되지 않으면 일치하는 항목이 없습니다. 정규 표현식이 맞습니까? – Asciiom
코드가 * 수행 할 작업 *을 자세히 설명해 주실 수 있습니까? 예상되는 결과는 무엇입니까? – Lix