Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: windows-1251

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
event
Отправлено: 19 Августа, 2012 - 19:23:07
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Привет.
Есть у меня файл с таким содержанием:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $getpage = file_get_contents("http://rutor.org/torrent/215393");
  4.  
  5.  
  6. preg_match('/\<b\>Перевод\:\s+\<\/b\>([^\<\>]*?)\<br\s*\/\>/ui', $getpage, $descr);
  7. echo $descr[1];
  8.  
  9.  
  10. ?>


Ну, вот трабл у меня, если файл windows-1251, то выдает еррор Warning: preg_match() [function.preg-match]: Compilation failed: invalid UTF-8 string at offset 6 in C:\AppServ\www\2.php on line 6, а вот если перекодирую в UTF-8, все начинает работать, как поправить, чтобы на windows-1251 работало, а то в UTF-8, я не могу перекодировать.
 
 Top
KingStar
Отправлено: 19 Августа, 2012 - 19:24:52
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




PHP:
скопировать код в буфер обмена
  1. $getpage = file_get_contents("http://rutor.org/torrent/215393");
  2. $getpage = iconv('WINDOWS-1251', 'UTF-8', $getpage);


-----
То что программа работает, не означает что она написана правильно!
 
 Top
event
Отправлено: 19 Августа, 2012 - 19:29:32
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Пробовал уже так,
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $getpage = file_get_contents("http://rutor.org/torrent/215393");
  4. $getpage = iconv("UTF-8", "windows-1251", $getpage);
  5.  
  6. preg_match('/\<b\>Перевод\:\s+\<\/b\>([^\<\>]*?)\<br\s*\/\>/ui', $getpage, $descr);
  7. echo $descr[1];
  8.  
  9.  
  10. ?>
Последствия такие же.
(Добавление)
хмм, вот так
PHP:
скопировать код в буфер обмена
  1. $getpage = file_get_contents("http://rutor.org/torrent/215393");
  2. $getpage = iconv("UTF-8", "windows-1251", $getpage);
  3.  
  4. preg_match('#<b>Перевод: <\/b>(.*)<br \/>#Uis', $getpage, $descr);
  5. echo $descr[1];


Заработало...
 
 Top
BAS-P
Отправлено: 19 Августа, 2012 - 19:34:48
Post Id


Гость


Покинул форум
Сообщений всего: 74
Дата рег-ции: Июнь 2012  


Помог: 1 раз(а)




event пишет:
u


Из за него, правильно с большой U в регулярке
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB