[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Фильтр ссылок по вайт листу
fire
Делаю некую функцию которая должна выдерать ссылки из сообщения если их нет в белом списке созданном мной, и все бы почти хорошо но не пойму, когда дело доходит до условия которое должно проверять совпадения ссылок оно не срабатывает, хотя как минимум должно отрабатывать на google.ru-google.ru

$string = 'Это тестовое сообщение, 1 ссылка http://ya.ru, есть еще google.ru ну и mysite.com.';
$link = array();

if (file_exists('link.txt')) {
$link = file('link.txt');
}

$flink = "/((http:\/\/|https:\/\/)?([a-z0-9\-\.]+)?[a-z0-9\-]+(!?\.[a-z]{2,4}))/";
preg_match_all($flink, $string, $text_link);


for ($i = 0; $i < count($text_link[0]); $i++) {
for ($a = 0; $a < count($link); $a++) {

echo $text_link[0][$i] . " - " . $link[$a] . " <br/>"; // это чтобы наглядней было видно где есть совпадения

if ($text_link[0][$i] == $link[$a]) {
echo "есть совпадение<br/>";
// оформляем ссылку
} else {
$string = preg_replace('/(http:\/\/|https:\/\/)?' . $link[$a] . '/',
'[недопустимая сервисом ссылка]', $string);
}
}
}


содержимое link.txt

ya.ru
google.ru
mail.ru




Спустя 19 минут, 8 секунд (14.12.2011 - 02:01) walerus написал(а):
У меня находит.

http://ya.ru - google.ru
google.ru - google.ru
есть совпадение
mysite.com - google.ru


Кодировки скрипта и файла link.txt одинаковы ?

Спустя 6 минут, 49 секунд (14.12.2011 - 02:08) fire написал(а):
В одинаковых, попробывал только что и в utf-8 и ansi и ничего sad.gif

Спустя 11 минут, 6 секунд (14.12.2011 - 02:19) walerus написал(а):
Ну так не бывает ), у кого то работает, у кого то нет )

У тебя ошибка,
if (trim($text_link[0][$i]) == trim( $link[$a] ) )

вот так исправь, лишние пробелы цепляет
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.