Найдешь ошибку в коде?

zxc

Пользователь
#1
Нашел сегодня очень полезную функцию по генерации тегов, но код отказывался работать. Ошибку искал пол часа наверно. Дошло до того что начал экранировать все подряд. :D
Кто быстрее? Подсказок не даю

PHP:
function seokeywords($contents,$symbol=5,$words=35){
    $contents = @preg_replace(array("'<[\/\!]*?[^<>]*?>'si","'([\r\n])[\s]+'si","'&[a-z0-9]{1,6};'si","'( +)'si"),
    array("","\\1 "," "," "),strip_tags($contents));
    $rearray = array("~","!","@","#","$","%","^","&","*","(",")","_","+",
                         "`",'"',"№",";",":","?","-","=","|","\"","\\","/",
                         "[","]","{","}","'",",",".","<",">","\r\n","\n","\t","«","»");

    $adjectivearray = array("ые","ое","ие","ий","ая","ый","ой","ми","ых","ее","ую","их","ым",
                                "как","для","что","или","это","этих",
                                "всех","вас","они","оно","еще","когда",
                                "где","эта","лишь","уже","вам","нет",
                                "если","надо","все","так","его","чем",
                                "при","даже","мне","есть","только","очень",
                                "сейчас","точно","обычно"
                            );


    $contents = @str_replace($rearray," ",$contents);
    $keywordcache = @explode(" ",$contents);
    $rearray = array();

    foreach($keywordcache as $word){
        if(strlen($word)>=$symbol && !is_numeric($word)){
            $adjective = substr($word,-2);
            if(!in_array($adjective,$adjectivearray) && !in_array($word,$adjectivearray)){
                $rearray[$word] = (array_key_exists($word,$rearray)) ? ($rearray[$word] + 1) : 1;
            }
        }
    }

    @arsort($rearray);
    $keywordcache = @array_slice($rearray,0,$words);
    $keywords = "";

    foreach($keywordcache as $word=>$count){
        $keywords.= ",".$word;
    }

    return substr($keywords,1);
}
 
Последнее редактирование:

zxc

Пользователь
#4
Какие еще права на редактирование? Суть и место ошибки напишите что ли.
Тут на форуме ошибка не воспроизводится.
Прикрепил текстовый файл. Ошибку сложно обнаружить через notepad++
Скачай и попробуй запусти на сервере
 

Вложения

  • 1,008 байт Просмотры: 16

zxc

Пользователь
#5
Ошибка в знаке доллара. Точнее в плюсике который внутри него. Есть идеи как такой плюсик поставить?
03-03-2016 2-03-27.jpg
 
Сверху