ФорумПрограммированиеPHP для идиотов → preg_replace заменить href у внутренних ссылок, кроме внешних ссылок

preg_replace заменить href у внутренних ссылок, кроме внешних ссылок

  • prodigy

    Сообщения: 19 Репутация: N Группа: Кто попало

    Spritz 13 ноября 2012 г. 8:37

    $text = preg_replace('~<a href=\"[^(?:https?|mailto)]~isu', '<a href="' . $scripturl . '?page=', $text);


    не фурычит, пол дня ебусь, help
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 13 ноября 2012 г. 9:06, спустя 28 минут 30 секунд

    prodigy, через callback делай, удобнее.
    Сапожник без сапог
  • prodigy

    Сообщения: 19 Репутация: N Группа: Кто попало

    Spritz 13 ноября 2012 г. 22:28, спустя 13 часов 22 минуты 27 секунд

    сделал вот так:

    
    	if (empty($_REQUEST['page']))
    		$page = 'index';
    	elseif (strpos($_REQUEST['page'], 'http') === 0 || strpos($_REQUEST['page'], 'mailto') === 0)
    		redirectexit($_REQUEST['page']);
    	else
    		$page = $_REQUEST['page'];
    



    prodigy, через callback делай, удобнее.


    хм, надо попбробовать - там через preg_match проверять?

Пожалуйста, авторизуйтесь, чтобы написать комментарий!