У меня есть 2 ссылок сказатьЕсли оператор ведет себя странно
http://localhost/xyz?language=en
http://localhost/xyz?language=es
, для которого я хочу, чтобы проверить, если параметр языка есть нечто иное, чем ан/ES, то он должен перенаправить в какой-то http://localhost/xyz/errorpage
Для этого я есть ниже код:
if(isset($_GET['language'])){
if(($_GET['language'] !== "en") || ($_GET['language'] !== "es")){
header('Location: /xyz/errorpage');
}
}
Но практически, когда я исполню любой из 2-х адресов или кладя значение language
параметра на что-то другое, чем en
/es
:
http://localhost/xyz?language=en
http://localhost/xyz?language=es
http://localhost/xyz?language=esdfsdf
Я перенаправлены errorpage
Не могу понять проблемы с кодом.
FYI: Это называется выражением * if *, нет такой вещи, как «цикл if». – deceze
Кроме того, подумайте об этом медленно ... * если X не A __or__ не B * ... один из них будет * всегда * применяться. – deceze
Прежде всего, нет такой вещи, как «цикл if», цикл - это что-то, что, ну, петли, итерации, которые нет в инструкции 'if'. Во-вторых, если вы серьезно относитесь к программированию (на любом языке), я рекомендую вам изучить [булевую алгебру] (http://en.wikipedia.org/wiki/Boolean_algebra). –