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
Форумы портала PHP.SU :: Версия для печати :: Вопрос по preg_match
Форумы портала PHP.SU » » Вопросы новичков » Вопрос по preg_match

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

1. netclan - 10 Июня, 2013 - 17:47:24 - перейти к сообщению
Здравствуйте! Чередуется проверка определённых условий, при этом хочу проверить наличие файла, если файла нет, то наличие тега. В общем не получается вывести ошибку при отсутствии того и другого, вот сам код:
PHP:
скопировать код в буфер обмена
  1.  
  2.             $page = file_get_contents("".$post_a['url']."/verification_".$user_a[1].".txt");
  3.                         if($page == "")
  4.                         {
  5.                                 $page = file_get_contents("".$post_a['url']."");
  6.                         if (preg_match ("!<meta name='ver' content='com-".$user_a[1]."' />!si", $page))
  7.                         {
  8.                                 $err="Ошибка! ";
  9.                         }
  10. }
  11.  
  12.  

Что я делаю не так?
2. VestCoastman - 11 Июня, 2013 - 14:40:10 - перейти к сообщению
if(!preg_match(....
3. imya - 11 Июня, 2013 - 15:50:14 - перейти к сообщению
Тогда уж так..

PHP:
скопировать код в буфер обмена
  1. if (! preg_match ("<meta name='ver' content='com-".$user_a[1]."' />!si", $page))

а то забудет убрать из искомого выражения воскл.знак
4. netclan - 11 Июня, 2013 - 15:53:39 - перейти к сообщению
Спасибо! Улыбка
5. LIME - 11 Июня, 2013 - 16:20:01 - перейти к сообщению
а зачем тут прегматч?
вполне хватит str_pos
imya некорректная регулярка
<> у тебя ограничители как я понимаю
тогда что за модификатор "!" ?
6. imya - 11 Июня, 2013 - 16:22:12 - перейти к сообщению
LIME пишет:
а зачем тут прегматч?
вполне хватит str_pos
imya некорректная регулярка
<> у тебя ограничители как я понимаю
тогда что за модификатор "!" ?

Регулярное выражение писал не я, скопировал то, которое есть в первом посте, убрав !
7. netclan - 11 Июня, 2013 - 16:35:22 - перейти к сообщению
LIME пишет:
некорректная регулярка

Это я уже переделал, у меня тут вопрос возник, может кто подскажет, как лучше проверять правильность адреса картинки введённой пользователем, т.е. к примеру нужно проверить:
http://сайт[dot]ru/img/125sd/fdf/11[dot]png (gif, jpeg), чтобы не было левых спецсимволов и т.п.
Лучше регулярной делать или функцией?
8. AlexAnder - 11 Июня, 2013 - 16:44:45 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. function checkImageType($url) {
  2.         static $types = array('.jpeg', '.jpg', '.png'); // and other...
  3.         return in_array(strrchr($url, '.'),$types);
  4. }

 

Powered by ExBB FM 1.0 RC1