bearman, я не претендую на идеальный вариант) Все случаи которые вы описали, будут решать сами вебмастера) Я ж говорю, для моих целей достаточно)
И? Кодировки страницы с головой хватит)
Если отходить от стандартов, обосрать можно любой код) Чем собственно, товарищи программисты и любят заниматься, увидев чужой код =)
С этим не поспоришь, я сам предпочитаю писать свое)
Я не знаю, какие ты преследуешь цели, для моих целей хватило перевода любой кодировки в UTF-8, после работать уже в UTF, только необходимо знать исходную кодировку)
Для определения кодировки страниц я пользуюсь функцией:
function _get_char_set($content) { $charset='UTF-8'; $content=preg_replace("/\n/", '', strtolower($content)); $res=preg_match_all('/<head(.*)<\/head>/', $content, $head); $head=$head[0][0]; preg_match_all('/charset=([^\/"> ]+)/', $head, $result); $result=trim($result[1][0]); if(!empty($result)) $charset=$result; return strtolower($charset); }
Тут конечно можно и по другому написать, сколько я тестировал, результат всегда был точен)
Это не ошибка)
Так и этого не будет:
$count_sim=25;$_str='';$i=0; $arr=array('.',' ', ',', "\n", '!', '?'); while(strlen($dt[5])>=strlen($_str)){ if(strlen($_str)>=$count_sim and in_array($dt[5][$i], $arr)) break; $_str.=$dt[5][$i++]; } $s1 = substr($dt[5], 0, strlen($_str)); $s2 = substr($dt[5], strlen($_str)+1, strlen($dt[5])); $dt[5] = '<h4>'.$s1 . '</h4>' . $s2;
Я Вам там ответил. Если вам надо через N символов, в переменной $count_sim нужное количество:
$count_sim=25; $arr=array('.',' ', ',', "\n", '!', '?'); while(strlen($dt[5])>=strlen($_str)){ if(strlen($_str)>=$count_sim and in_array($dt[5][$i], $arr)) break; $_str.=$dt[5][$i++]; } $s1 = substr($dt[5], 0, strlen($_str)); $s2 = substr($dt[5], strlen($_str)+1, strlen($dt[5])); $dt[5] = '<h4>'.$s1 . '</h4>' . $s2;
$arr=array('.',' ', ',', "\n", '!', '?'); while(strlen($dt[5])>=strlen($_str)){ if(strlen($_str)>=25 and in_array($dt[5][$i], $arr)) break; $_str.=$dt[5][$i++]; } $s1 = substr($dt[5], 0, strlen($_str)); $s2 = substr($dt[5], strlen($_str)+1, strlen($dt[5])); $dt[5] = '<h4>'.$s1 . '</h4>' . $s2;
Гугл вам в помощь)
UCS-4, UCS-4BE, UCS-4LE, UCS-2, UCS-2BE, UCS-2LE, UTF-32, UTF-32BE, UTF-32LE, UCS-2LE, UTF-16, UTF-16BE, UTF-16LE, UTF-8, UTF-7, ASCII, EUC-JP, SJIS, eucJP-win, SJIS-win, ISO-2022-JP, JIS, ISO-8859-1, ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, ISO-8859-13, ISO-8859-14, ISO-8859-15, byte2be, byte2le, byte4be, byte4le, BASE64, 7bit, 8bit и UTF7-IMAP
skAmZ добавил 26.02.2010 в 21:53
К тому же зачем писать, если расширение mbstring, поддерживает огромное количество кодировок
12 запросов за 5 минут гарантировано не банит, с одного ip, само собой без использования XML.
Я так понимаю самопис, не важно как много вы ранее делали запросов, банит на несколько часов, т.е. по истечении определенного времени все нормально будет. Делайте проверку, при получении качпи вырубайте скрипт.
Для большого количества проверок по любому использовать XML, количество ip уже по необходимости.
Достаточно одной таблицы в БД: поля нужные параметры. При необходимости обновление параметров по cron, выборка по любым полям, в любых комбанициях, а так же экспорт в любом нужном виде. Сам скрипт написать особого труда не составит, необходимы минимальные знания)
Проверьте наличие ссылки в кеше страницы.
Как на счет "Moneyback" для не дропнутых, если тема работает, не для всех конечно, для первого хватит?)