찾다

 >  Q&A  >  본문

PHP7.0이 preg_replace를 포기한 후 preg_replace를 조정하는 방법

$options = Typecho_Widget::widget('Widget_Options');
$sUrl = str_ireplace('/', '\/', rtrim($options->siteUrl, '/'));
$preg = '#(<a .*?href=")(?!' . $sUrl . ')([^"]+)"(.*?<\/a>)#ise';
$text = preg_replace($preg, "stripslashes('$1') . '$options->siteUrl' . 'go.html?url=' . base64_encode('$2') . '\" target=\"_blank\ "' . 스트립슬래시('$3')", $text);

코드를 PHP7.0에 넣은 후 오류가 보고되었습니다. 프롬프트에 따르면 preg_replace가 중단되어 preg_replace_callback으로 대체되어야 한다는 것을 알게 되었습니다. 어떻게 하나요?

高洛峰高洛峰2836일 전601

모든 응답(3)나는 대답할 것이다

  • 天蓬老师

    天蓬老师2017-05-16 13:11:06

    preg_replace를 버린 것이 아니라 /e 수정자를 버린 것입니다.

    이렇게 바꿔야 될 것 같아요

    으아아아

    회신하다
    0
  • 迷茫

    迷茫2017-05-16 13:11:06

    이 기능이 중단되었는지 어디서 확인할 수 있나요?
    http://php.net/manual/zh/func...
    지원 (PHP 4, PHP 5, PHP 7)
    오류 메시지 게시

    회신하다
    0
  • 黄舟

    黄舟2017-05-16 13:11:06

    Preg 접두사가 붙은 함수는 쓸모가 없지만, eregi 접두사가 붙은 함수는 쓸모가 없습니다

    회신하다
    0
  • 취소회신하다