用户登录

PHP 执行代码的时候都是从上往下,一行一行的去执行,不过通过一些语法,我们可以控制代码执行的顺序。比如,使用 if 语句,可以先去判断一个条件,如果条件是真的,就去执行一段代码,如果是假的,就是执行另一段代码。

下面去试一下这个 if 语句 .. 先在这个 PHP 文件里面,定义几个变量 ... $user_name ... 用户名等于 王皓 ... $user_role ... 用户的角色是 admin ... 再加上一个 $is_login ... 表示用户是否登录了 .. 这里先设置成 true ...

$user_name = '王皓';
$user_role = 'admin';
$is_login = true;

我们可以假设这些变量的值都是通过某种方式得到的,比如从数据库里面提取出来的 ...

然后用 if 语句去做一下判断 ... if 就是如果的意思 ... 然后加上一个括号 ... 在括号里面,就是要判断的条件 .. 比如我们要判断一下用户是不是已经登录了 ... 输入 $is_login ...

在后面再加上一组花括号 ... 在这个花括号里面,可以去设计一下,当要判断的条件是真的时候,要执行的代码 ...

在这里,我们输出一个问候的信息 ... 您好: 后面加上 $user_name ...

if ($is_login) {
echo '您好:' . $user_name;
}

保存 ... 在屏幕上会显示 您好:王皓 ... 因为要判断的条件,也就是 is_login ,会返回一个真的假 ...

这回我们把 $is_login 的假改成 false ...

你会看到,屏幕上就没有显示问候的信息了 ... 因为判断的条件会返回一个假值 ...

else

在这里,我们可以使用一个 else ,去添加一个如果判断的条件返回假值的时候要执行的代码 .. else ... 后面再加上一组花括号 ... 用一个 echo ,输出,请先登录.. 这几个字 ...

现在,屏幕上会显示 请求登录 ... 因为要判断的条件 $is_login 返回的是一个假值 ...

再把它改成 true ... 这回又会显示这个问候的信息了 ...

else {
echo '请先登录...';
}

&&

有时候要判断的条件不只一个,或者要判断的情况也不太一样 ... 比如我们想在用户登录了并且他的角色是管理员的时候,去做一点特别的事儿 ...

在这个 $is_login 的后面,加上两个 & 符号 .. 用它可以连接其它要判断的条件 ... 而且用这个符号连接的不同的条件,只有这些条件全都返回真的时候,它才会返回一个真值 ... 要想让多个条件只要有一个真的就行 ... 可以使用或这个逻辑操作符,可以使用两条竖线来表示 || ...

这里要判断的另一个条件是 $user_role 要等于 admin ... 注意这里我用了三个等号 ... 一个等号的意思是去赋值 ...

如果是两个等号,就表示去判断两个值是否相等 ... 三个等号的意思是, 这两个值不但是相等的,并且值的类型也必须是一样的 ...

这样这个要判断的条件就是,如果用户登录了同时这个用户的角色得是管理员 ... 才会去执行在它后面的这块代码 ...

这里,我们可以输出一个 您好管理员: ... 保存 ...

屏幕上会显示,您好管理员 ...

elseif

如果有继续要判断的情况,可以在这块儿代码里使用一个 elseif ... 去设置其它的条件 ... elseif ... 加上一组括号 ... 括号里是要判断的条件 ... 条件是 $is_login ... 看看用户是不是已经登录了 ... 再输入一组花括号 ... 如果登录的值 ... 输出一个问候 ...

elseif ($is_login) {
echo '您好:' . $user_name;
}

这样整个这段代码的意思就是,如果用户登录了,并且他还是管理员,那么就显示一个 您好管理员,再加上用户的名字 ... 如果用户不是管理员,但是已经登录了 .. 显示的是 您好,后面加上用户的名字 ... 如果用户没登录,也不是管理员 ... 会显示一个请示登录的信息 ...

演示

现在显示的是您好管理员 ... 把 $user_role 的值换成一个其它的值 ... 比如 author ... 这次用户就不是管理员了 ... 但是 $is_login 的值仍然是 true ... 所以,会显示 您好 ... 再加上用户名 ...

再把这个 $is_login 的值,改成 false ... 现在用户即不是管理员,也没有登录 .. 所以,会显示 请先登录 ... 这几个字儿 ...

0:00
0:00
4:42
0:00
2:17
0:00
0:00
0:00
1:22
3:45
0:00
0:00

流程控制 - 条件判断 - if《 PHP 基础 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点