кодировки сайтов

Uzseo
На сайте с 26.10.2007
Offline
114
601

Привет всем!!!

Подскажите плиз какой функцией php можно вытаскивать кодировку сайтов, открываемых при помощи:

get_contents()

Заранее спасибо!

[umka]
На сайте с 25.05.2008
Offline
456
#1

Если вы про PHP file_get_contents(), то она не возвращает заголовки сервера.

Нужно делать или через curl или вручную через сокеты.

Лог в помощь!
Uzseo
На сайте с 26.10.2007
Offline
114
#2
'[umka:
;6444653']Если вы про PHP file_get_contents(), то она не возвращает заголовки сервера.
Нужно делать или через curl или вручную через сокеты.

А подсказать на примере можете?

Мне нужно просто прочесть в мета теге какой кодировки сайт.

[umka]
На сайте с 25.05.2008
Offline
456
#3

Если только из мета-тега, то примерно так

$data='… <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> …';
if (preg_match("/<meta [^>]+charset=([^\"' ]+)/i",$data,$regs)) {
$charset=$regs[1];
} else {
echo "Нету :(";
}

НО! мета-тега может и не быть. Тогда только из заголовков сервера, как говорил выше.

И еще, кодировка в заголовках сервера может отличаться от кодировки в мета-теге, если у вебмастера, например, руки кривые :)

Nunan
На сайте с 15.08.2008
Offline
78
#4

Смотри - http://omsk777.ru/kodir2.html, но там все слишком громоздко

FeoOne
На сайте с 27.12.2008
Offline
32
#5
Uzseo
На сайте с 26.10.2007
Offline
114
#6

Спасибо всем!!!

но альтернативного решения так и не нашёл. Мне нужно просто по мета-тегу страницы, не хочется замарачиваться с ответами заголовка сервера. ;)

Leo'K
На сайте с 19.03.2009
Offline
16
#7

http://phpclub.ru/faq/encodings/encodings4?v=336

function detect_encoding - там их несколько

web-developer & architect (php,python,highload,opensource) blog: webmaterials.ru (http://www.webmaterials.ru)
frantic
На сайте с 09.02.2009
Offline
27
#8
'[umka:
;6444790']
НО! мета-тега может и не быть. Тогда только из заголовков сервера, как говорил выше.
И еще, кодировка в заголовках сервера может отличаться от кодировки в мета-теге, если у вебмастера, например, руки кривые :)

А еще и в заголовках может не быть если совсем кривые :D

frantic добавил 02.03.2010 в 21:24

Ikrom:
Спасибо всем!!!
но альтернативного решения так и не нашёл. Мне нужно просто по мета-тегу страницы, не хочется замарачиваться с ответами заголовка сервера. ;)

А его и нет альтернативного. И вообще, полистай пару страниц назад, тут дня 2-3 назад обсуждали такую же точно тему

FeoOne
На сайте с 27.12.2008
Offline
32
#9
не хочется замарачиваться с ответами заголовка сервера

лол, лучше конечно выкачать страницу сайта килобайт в 100 и регуляркой вытащить. А если нет мета тегов с кодировкой? Заголовки - единственный правильный способ решения вашей проблемы, тем более что реализовывается это в 2 строчки кода.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий