逻辑运算| 学习笔记

简介: 快速学习逻辑运算。

开发者学堂课程【PHP 基础入门课程(上) :逻辑运算】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/709/detail/12607


逻辑运算

 

内容介绍:

一、了解逻辑运算的概念

二、掌握逻辑运算符的原理及应用

 

一、了解逻辑运算的概念

1、概念

逻辑运算:是针普通运算的结果的二次运算

  • 逻辑运算一般需要1个或者2个表达式参与
  • &&旷逻辑与运算(也作 and),左右两边结果都为 true 返回 true,否则返回 false
  • ||:逻辑或运算(也作 or),左右两边结果至少有一个 true 返回 true,否则返回 false
  • !:逻辑非运算,原来结果为 true 返回 false,原来结果为 false 返回 true
  • 逻辑运算(逻辑与和逻辑或)也称之为短路运算:即左边表达式如果已经能够确定结果,那么右边表达式就不再判定

a. 逻辑或:如果左边第一个表达式已经为真,第二个表达式就不会运算(结果为真)

b. 逻辑与:如果左边第一个表达式已经为假,第二个表达式就不会运算(结果为假)

  • 运算原理:将所有表达式的结果转换成布尔结果之后再进行运算

 

二、掌握逻辑运算符的原理及应用

1、示例

#简单示例

$a = true;

$b = false;

#逻辑运算

var_dump($a ll $b);   #true,因为 $a 为 true,所以整个结果为 true

var_dump($a && $b);    #false,因为 $b 为 false,所以整个结果为 false

var_dump( ! $a);  #false,因为 $a 为 true,取反得到 false

#通常参与逻辑运算的同时会有其他运算参与

$age = $_POST[ 'age ' ];

$res = $age < 18 ll $age > 65;

#先执行左侧的 $age < 18比较运算

#后执行右侧的 $age > 65比较运算

#两个比较结果进行|逻辑运算

#短路验证

$a = 100;

$a == 100 ll $b = 10;    #案例:实际开发不要出现运算中赋值

/*

1、比较左边: $a == 100,结果为 true

2、发现是逻辑或运算:结果已经出来:  true

3、忽略 $b = 10 运算

* /

var_dump($b);    #未定义的变量

案例

1 <?Php

2

3

4#逻辑运算

5

6 $age = 21;

7

8

9#判定年龄

10$res = $age < 18 |$age > 65;

11 var_dump($res, ! $res);\\结果为bool{ture}

12

13

14 #短路验证

15 $age > 65 l$b = 10;

16 / / var_dump($b);

17

18

19 #前面的操作如果不成功那么代码没有必要继续执行

20

21 $a = false or die('错误');\\结果为错误

22

23 echo $a; 

小结

1、逻辑运算符有三种:&&逻辑与、l|逻辑或、!逻辑非

  • &&:两个表达式都为真结果才为真,其他为假
  • ||∶两个表达式都为假结果才为假,其他为真
  • ! :一个表达式,对本身布尔结果取反

2、逻辑运算是对布尔结果进行比较

  • 本身就是布尔结果:直接运算
  • 本身非布尔结果:自动转换成布尔结果后再运算

3、逻辑运算通常与其他运算结合在一起运算

4、逻辑与和逻辑或也称之为短路运算

  • 逻辑与:第一个为假,第二个不运算(短路)
  • 逻辑或:第一个为真,第二个不运算(短路)
  • 在实际开发中,应该将大概率能判定整个结果的运算放前面

5、逻辑运算在实际开发的时候运用比较多,尤其是逻辑复杂的程序

相关文章
|
6月前
|
程序员 C++
10关系运算和逻辑运算
10关系运算和逻辑运算
38 0
|
6月前
|
C++
C++程序中的逻辑运算
C++程序中的逻辑运算
77 1
|
5月前
数字逻辑与模拟电子技术-部分知识点(3)——数电部分-基本逻辑运算、复合逻辑运算
数字逻辑与模拟电子技术-部分知识点(3)——数电部分-基本逻辑运算、复合逻辑运算
86 0
|
6月前
|
C语言
逻辑电路与逻辑运算笔记分享
【4月更文挑战第1天】逻辑电路与逻辑运算笔记分享
98 4
|
6月前
1-3 逻辑运算
1-3 逻辑运算
30 0
C#中算数运算符及逻辑运算
C#中算数运算符及逻辑运算
83 0
|
PHP 开发者
比较运算| 学习笔记
快速学习比较运算。
比较运算| 学习笔记
|
开发者 Python
逻辑运算的使用 | 学习笔记
快速学习 逻辑运算的使用
113 0
|
开发者
算术运算| 学习笔记
快速学习算术运算。
|
Java Scala 开发者
算数运算符|学习笔记
快速学习算数运算符。
215 0