Меня интересует такой момент. Парсю я к примеру 2 сайта, у них одинаковые категории но по разному написаны.
Например:
1 сайт: Ножи туристические
2 сайт: Туристические ножи
Это одинаковые категории но по другому написаны. Категории все записываются в массив, но перед записью нужно проверить массив на наличие подобного рода вхождений.
Как быть в такой ситуации?
Можно ещё без сортировки массива - переворачивать его элементы:
$str_1 = 'Ножи туристические';
$str_2 = 'Туристические ножи';
var_dump( similar_str($str_1, $str_2) );
function similar_str(... $data)
{
[$a, $b] = array_map('mb_strtolower', $data);
$b = join(' ', array_reverse(explode(' ', $b)));
return $a == $b;
}
UPD: Как выяснилось, вариант с array_reverse() подходит только для пары слов, поэтому я дописал сортировку, как и было предложено в комментариях:
$str_1 = 'Ножи какие-то туристические';
$str_2 = 'Туристические ножи какие-то';
var_dump( similar_str($str_1, $str_2) );
function similar_str(... $data)
{
[$a, $b] = array_map(function($i){
$words = explode(' ', mb_strtolower($i));
sort($words);
return $words;
}, $data);
return $a == $b;
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
подскажите пожалуйстаЕсть два select, выбираю их и нажимаю - выводит одну таблицу, выбираю ещё другое значение select`a, выводит одну и ещё предыдущую...
Обновил ядро Drupal, до версии 764, всё обновилось без происшествий
Нужна помощь с переписыванием preg_replace в preg_replace_callback:
Не выводиться запись из бд типу VarcharОтправляю через AJAX запрос в бд, в ответ получаю пустой запрос, но если сделаю выборку и закоментирую некоторое...