计算机码:计算机在实际存储数据的时候,采用的编码规则(二进制规则)

计算机码:原码、反码和补码,数值本身最左边一位是用来充当符号位:正数为0,负数为1

原码:数据本身从十进制转换程二进制得到的结果(正数的原码、反码和补码就是原码本身)

反码:针对负数,符号位不变,其他位取反

补码:针对负数,反码+1

系统中存在两个0:+0和-0

+0:  00000000

-0:   10000000   原码

取反   11111111

补码   00000000

位运算符

位运算:取出计算机中最小的单位(位bit)进行运算

&:按位与,两个位都为1,结果为1,否则为0

|:按位或,两个有一个为1,结果为1

~:按位非,一个位如果为1则变成0,否则反之

^:按位异或,两个相同则为0,不同则为1

<<:按位左移,整个位(32位),向左移动一位,右边补0

>>:按位右移,整个位向右移动一位,左边补符号位对应内容(正数补0,负数补1)

注意:

1、系统进行任何位运算的时候都是使用的补码

2、运算结束之后都必须转换成原码才是最终要显示的数据

运算符优先级(从上往下优先级降低)

流程控制

流程控制:代码执行的方向

控制分类

顺序结构:代码从上往下,顺序执行。(代码执行最基本的结构)

分支结构:给定一个条件,同时有多种可执行代码(块),然后会根据条件执行某一段代码

在PHP中,分支结构主要有两种:if分支和switch分支

if分支:给定一个条件,同时为该条件设置多种(两种)情况,然后通过条件来判断,来实现具体的执行段

基本语法:if分支PHP也提供多种方式来实现

if (condition) {
    // 条件为真时执行的代码
}

两面性

if (condition) {
    // 条件为真时执行的代码
} else {
    // 条件为假时执行的代码
}

复杂if结构:在判断条件之后,通常就有两种结果,满足或者不满足,在不满足之后还可以再次判断,采用elseif,可以多次采用(如果条件特别多才会采用复合if结构,这里就不详细讲了,学过c语言的应该都会)(如果判断条件不一致,建议使用嵌套语法)

if (condition1) {
    // 条件1为真时执行的代码
} elseif (condition2) {
    // 条件2为真时执行的代码
} else {
    // 所有条件均为假时执行的代码
}

if分支,适用于所有的条件判断(分支结构)

Switch分支

Switch分支:有一组情形存在,通过一个条件,通常有多个值,但是每一个值都会有对应不同的代码要执行。判断方式:是将条件放到分支结构内部判断

基本语法:

switch (expression) {
    case value1:
        // 代码块1
        break;
    case value2:
        // 代码块2
        break;
    ...
    default:
        // 默认代码块
}

eg:

$day = "Monday";
switch ($day) {
    case "Monday":
        echo "今天是星期一";
        break;
    case "Tuesday":
        echo "今天是星期二";
        break;
    case "Wednesday":
        echo "今天是星期三";
        break;
    default:
        echo "今天是其他日子";
}

if和switch的选择:
1、if能做所有的分支结构事情

2、switch处理的是条件比较多,同时比较单一,而且是固定值匹配的分支结构

循环结构:在某个条件控制范围内,指定的代码(块)可以重复执行

在PHP中循环结构有以下几种:

For循环:通过条件、起始和终止判断执行

for (initialization; condition; increment) {
    // 循环体代码
}
$i = 0;
for (; $i < 10;) {
    echo $i++;
}

While循环:通过判断条件终止

while (condition) {
    // 代码块
}
$i = 1;
while ($i <= 5) {
    echo $i . "\n";
    $i++;
}

Do-while循环:跟while差不多,区别:

while 循环先检查条件再执行循环体,而 do-while 循环先执行循环体再检查条件。do-while 至少会执行一次循环体。

do {
    // 代码块
} while (condition);

Foreach循环:专门针对数组

foreach ($array as $value) {
    // 处理$value的代码
}
foreach ($array as &$value) {
    $value = $newValue; // 直接修改原数组
}
unset($value); // 循环后建议取消引用

注意:
1、循环后引用变量可能意外修改数组,建议立即unset()
2、遍历多维数组时通常需要嵌套foreach
3、PHP 7+支持foreach的指针操作不影响原数组

循环控制

循环控制:在循环内部对循环本身进行控制

中断控制:重新开始循环,循环体中还有其他内容,也再执行

Continue层级;

终止控制:循环直接结束

Break层级;

因为循环经常性会碰到嵌套(循环中间包含循环),如果在循环内部有些条件下,明确可以知道当前循环(或者说外部循环)不需要继续执行了,那么就可以使用循环控制来实现,其中内部循环也可以控制到外部,就是通过使用层级参数

Continue2;//当前自己循环后面内部不再执行,同时外部循环如果还有循环体也不再执行,重新来过;

Break2;//当前自己循环结束,同时外部也结束(如果还有外部不受影响,继续执行)

posted on 2025-09-29 15:26  ycfenxi  阅读(7)  评论(0)    收藏  举报