2015-02-10 4 views
0

Я использую следующий код для определения правильной перенаправления. Верхняя проверка совпадает, как и ожидалось, и выбирает нужную страницу для загрузки, но вторая проверка не возвращает совпадения, и я в конечном итоге перенаправляется на страницу по умолчанию. Я сравнил две линии, пока не увижу прямо. Они выглядят одинаково по форме и функции, кроме очевидной разницы в том, что я пытаюсь совместить, конечно. Что мне не хватает? Есть ли другой способ достичь моей цели, которая может быть лучшим выбором? Спасибо, как всегда.preg_match не перенаправляется должным образом

if (preg_match('/\Handicap Summer Foursomes/', $eventname)) { 
    $form = '<a class="primary" href="signup_HSF.php?eid=' . $EID . '&squads=2">Sign-up</a>'; 
} else if (preg_match('/\Gigantic 5/', $eventname)) { 
    $form = '<a class="primary" href="signup_G5.php?eid=' . $EID . '&squads=2">Sign-up</a>'; 
} else { 
    $form = '<a class="primary" href="signup.php?eid=' . $EID . '&squads=2">Sign-up</a>'; 
} 
+0

Что такое '\ H' и' \ G'? Ни один из этих символов не должен бежать. –

ответ

0
if (preg_match('/\Handicap Summer Foursomes/', $eventname)) { 
       ^^ 

В пропитанного связующим веществом, \H является «любой символ, который не является горизонтальным пробельным символом». Хотя это будет соответствовать буквальному H, потому что это не символ horiz-WS, это все-таки escape-последовательность, о которой вам нужно знать.

Ditto for \G в другом шаблоне. в preg, \G - это «первое совпадающее положение в теме». Это определенно не подходит.

+0

Спасибо, Марк. Я пропустил правильное использование \ b в моем коде. Работает сейчас! –

+0

Пытался дать вам верх, но я не уровень 15, так что это не позволит мне это сделать –

Смежные вопросы