Логические операторы становятся самостоятельными в сочетании с условными тестами.
| Оператор | Описание |
|---|---|
| && | and и |
| || | or или |
| ! | not не |
Оператор AND(&&)
| Оператор | name and pass |
|---|---|
| Описание | Если name and pass оба имеют значение true, то результат true. |
| Объяснение | Если name = = "alex" и pass = = "alex123", то произойдёт перенаправление на страницу phptpoint, и если какой-либо из них недействителен, то будет показано сообщение об ошибке (неверное имя или пароль). |
<?php
$name="alex";
$pass="alex123";
if($name=="alex" && $pass=="alex123")
{
header('location:https://foxyforex.ru');
}
else
{
echo "Invalid name or password";
}
?>Результат: This program will redirect you on «https://foxyforex.ru» page
В приведённом выше примере есть две переменные $name и $pass со значением («alex», «alex123»). Если оба значения существуют, то они будут перенаправлены на foxyforex.ru из-за header( ). В противном случае: ошибка invalid name or password (недопустимое имя или пароль).
Здесь оба условия выполняются, так что в качестве выходных данных вы будете перенаправлены на страницу «https://foxyforex.ru».
Оператор OR(||)
| Оператор | name or pass |
|---|---|
| Описание | Если name или pass имеют значение true, то результат true. |
| Объяснение | Если name = = "alex" или pass = = "alex123", то произойдёт перенаправление на страницу foxyforex.ru, и если оба значения false, то будет показано сообщение об ошибке (неверное имя или пароль). |
<?php
$name="alex";
$pass="alex123";
if($name=="alex" || $pass=="alex12345")
{
header('location:https://foxyforex.ru');
}
else
{
echo "Invalid name or password";
}
?>Результат: This program will redirect you on «https://foxyforex.ru» page
В приведённом выше примере две переменные $name или $pass $name содержат значение = «alex», $pass содержат значение = «alex123», если какое-либо из условий выполнено, то вас перенаправляют на страницу «https://foxyforex.ru«, в противном случае это неверное имя или пароль.
Здесь выполняется одно из обоих условий, поэтому в качестве выходных данных вы будете перенаправлены на страницу «https://foxyforex.ru«.
Оператор Not(!)
| Оператор | Не |
|---|---|
| Описание | Обратный логический тест |
| Объяснение | Проверьте, является ли данное число нечетным или нет. Здесь в $num хранится 11, а его модуль равен 1. Например, значение $num mudulus не равно 0, это нечетное число, поэтому 11 является нечетным числом. |
<?php
$num=11;
if($num%2!=0)
{
echo $num." is odd number";
}
else
{
echo $num." is even number";
}
?>Результат: 11 is odd number
В приведённом выше примере возьмем переменную $num со значением = 11 и проверим, является ли число чётным или нечётным.
Мы задаём условие ($num%2!=0) внутри. Если оно не будет истинным, тогда число нечётное. В противном случае выполняется оператор else (число чётное).
Здесь число не делится на 2, поэтому на выходе отображается: данное число является нечётным числом.
Создайте страницу входа с помощью && и ||
<?php
if(isset($_GET['login']))
{
$eid=$_GET['e'];
$pass=$_GET['p'];
if($eid=="" || $pass=="")
{
echo "<font color='red'>Please fill your email and pass</font>";
}
else
{
if($eid=="xyz" && $pass=="xyz123")
{
echo "<font color='blue'>welcome xyz</font>";
}
else
{
echo "<font color='red'>wrong email or pass</font>";
}
}
}
?>
<form>
Enter your email<input type="text" name="e"/><br/>
Enter your pass<input type="password" name="p"/>
<input type="submit" value="Signin" name="login"/>
</form>
В приведённом выше примере мы создаём форму из двух полей. По умолчанию методом формы является ‘GET’,
Первое поле — для электронной почты, второе поле — для пароля.
Логика определяется в PHP-скрипте. Сначала проверяем функцию isset( ) на наличие, вводим имя и пароль в поле name и password. Значение сохраняется в переменных ($eid и $pass).
Если значение $eid или $pass равно null, то отображается сообщение «введите свой адрес электронной почты или пароль».
В противном случае выполняется проверка значения $eid и $pass на соответствие заданному существующему значению.
Если совпадают, то отображается сообщение «Добро пожаловать xyz», в противном случае отображается сообщение «Неверный адрес электронной почты или пароль».