Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Grundlagen-Tutorial mit drei Operatoren

PHP-Grundlagen-Tutorial mit drei Operatoren

黄舟
黄舟Original
2017-03-01 09:28:491298Durchsuche

Inhalt in diesem Abschnitt erklärt

  • Arithmetische Operatoren

  • Inkrement- und Dekrementoperatoren

  • Zuweisungsoperator

  • String-Operator

  • Vergleichsoperator

  • Bitweise Operatoren

  • Logische Operatoren

  • Ternäre Operatoren

  • Fehlerkontrolloperatoren

Vorwort

PHP-Operatoren sind eine Fähigkeit, die in den Grundlagen von PHP beherrscht werden muss, sie ist eine Brücke für PHP-Datenverarbeitungsoperatoren Wird bei verschiedenen Operationen an Daten verwendet, z. B. Addition, Subtraktion, Multiplikation, Division und/oder anderen Operationen.

Arithmetischer Operator

Arithmetischer Operator: Dies ist das Symbol zur Verarbeitung der vier arithmetischen Operationen. Dies ist das einfachste und am häufigsten verwendete Symbol, insbesondere für die Verarbeitung von Zahlen werden fast immer arithmetische Operationssymbole verwendet.

Klassifizierung arithmetischer Operatoren:

-$a Negation, negativer Wert von $a

$a = -1;
echo -$a;
-----结果-----
1

$a + $b Addition von $a und $b Summe

$a = 12;
$b = 12;
$res = $a + $b;
echo $res;
-----结果-----
24

$a - $b Subtraktion Die Differenz zwischen $a und $b

$a = 12;
$b = 6;
$res = $a - $b;
echo $res;
-----结果-----
6

$a * $b Multiplikation Das Produkt von $a und $b

$a = 2;
$b = 3;
$res = $a * $b;
echo $res;
-----结果-----
6

$a / $b ist der Quotient aus der Division von $a und $b

$a = 12;
$b = 6;
$res = $a / $b;
echo $res;
-----结果-----
2

$a % $b ist der Restmodulo von $a und $b;

$a = 3;
$b = 2;
$res = $a % $b;
echo $res;
-----结果-----
1

Inkrementierungs- und Dekrementierungsoperatoren

  • ++$a: Der Wert von $a wird um eins erhöht und dann wird $a zurückgegeben. Dies ist eine Vorwärtsaddition .

  • $a++ gibt $a zurück und addiert dann eins zum Wert von $a, was nach der Addition erfolgt.

  • –$a Dekrementieren Sie den Wert von $a um eins und geben Sie dann $a zurück, zuvor dekrementiert.

  • $a– Gibt $a zurück, dekrementiert dann den Wert von $a um eins und dekrementiert ihn dann.


++$a

$a = 1;
$b = ++$a;//先++,在进行赋值运算,等价于$a = $a + 1; $b = $a;
echo $b . &#39;<br>&#39; . $a;
-----结果-----
$b = 2 $a = 2

$a++

$a = 1;
$b = $a++;//先赋值,在进行++运算,等价于$b = $a; $a = $a + 1;
echo $b . &#39;<br>&#39; . $a;
-----结果-----
$b = 1  $a = 2

Die Situation der Subtraktion ist die gleiche wie oben.

Zuweisungsoperator

Der grundlegende Zuweisungsoperator ist „=", was eigentlich bedeutet, dass der Wert des Ausdrucks auf der rechten Seite der Operation auf der linken Seite zugewiesen wird Nummer.

$a = 1;
$b = &#39;string&#39;;

Es gibt auch Fälle wie +=, -=, /= usw.

$a = 1;
$a += 2;//等价于$a = $a + 2;
echo $a;
-----结果-----
3

String-Operator

hat zwei Strings. Der Operator ist ("."), der eine mit seinen linken und rechten Argumenten verkettete Zeichenfolge zurückgibt.

$a = 1;
$b = 2;
echo &#39;$a = &#39; . $a . &#39;  $b = &#39; . $b;
-----结果-----
$a = 1 $b = 2;

Vergleichsoperator

Der Vergleichsoperator wird verwendet, um zwei Variablen zu vergleichen, ob der Wert gleich ist, ob der Datentyp gleich ist und für den Vergleich Das Ergebnis ist größer. Die meisten sind vom booleschen Typ.

Übliche Vergleichsoperatoren sind:

  • $a == $b ist gleich wahr. Wenn $a == $b, hier im Allgemeinen nur die numerischen Werte als gleich beurteilt werden, wird nicht festgestellt, ob die Typen gleich sind.

  • $a === $b Kongruent wahr, wenn $a gleich $b ist und ihre Typen gleich sind.

  • $a != $b ist nicht gleich wahr, gibt true zurück, wenn die Werte der beiden Variablen nicht gleich sind;

  • $a < ;> $b ist nicht gleich wahr. Es gibt eine andere Möglichkeit, die obige Situation zu schreiben, wenn $a nach der Typkonvertierung nicht gleich $b ist.

  • $a !== $b ist nicht gleich wahr. Wenn $a nicht gleich $b ist oder ihre Typen unterschiedlich sind, beachten Sie, dass eine der beiden Variablen wahr ist ungleich, wahr wird zurückgegeben ;(Zahl, Typ)

  • $a da213980ccfafbc5da34a4fb8ed157b0 $b ist größer als TRUE, wenn $a strikt größer als $b ist.

  • $a d1ad821a23bc84019f63c7b1ee23dfaf= $b ist größer oder gleich TRUE, wenn $a größer oder gleich $b ist.


    $a = 2;
    $b = &#39;2&#39;;
    var_dump($a == $b); //判断两个数值是否相等,比较的时候会进行类型转换。
    -----结果-----
    bool(true)  
    var_dump($a === $b);//判断数值和类型是否相等,当时全等比较的时候,不会进行类型转换。
    -----结果-----
    bool(false)

Bitweise Operatoren

Die bitweisen Operatoren ermöglichen die Angabe von Bits in einer Ganzzahl, die binär angegeben werden soll Methode zur Auswertung und Bedienung.

Davor reden wir zuerst über Binärzahlen

Eine kurze Einführung in Binärzahlen

Im Computer werden alle Zahlen als „Gespeichert in“ im Speicher abgelegt binäre Form. Um es ganz klar auszudrücken: Bitoperationen dienen dazu, direkt die binären Bits von Ganzzahlen im Speicher zu bearbeiten.

Was ist binär: Binärdaten sind eine Zahl, die durch zwei Ziffern dargestellt wird, 0 und 1. Seine Basis ist 2, die Übertragsregel lautet „Wenn zwei eingegeben werden, wird eins hinzugefügt“ und die Ausleihregel lautet „Eins ausleihen, um gleich zwei zu sein“.

Dezimalzahl in Binärzahl umwandeln: „Durch 2 dividieren und den Rest bilden, in umgekehrter Reihenfolge anordnen“ (durch zwei dividieren und den Rest bilden)

        商   余数
3 / 2 = 1.....1
1 / 2 = 0.....1
二进制(逆序排列):
11

12 / 2 = 6....0
6 / 2 = 3.....0
3 / 2 = 1.....1
1 / 2 = 0.....1
二进制:
1100

15 / 2 = 7....1
7 / 2 = 3.....1
3 / 2 = 1.....1
1 / 2 = 0.....1
二进制:
1111

Binär in Dezimal umwandeln : „Summe nach Gewicht erweitern“

1111 = 1 * 20 + 1 * 21 + 1 * 22 + 1 * 23 = 15
10 = 0 * 20 + 1 * 21 = 2

Es gibt drei Ausdrucksformen von Symbolbits in Computern :

  • Originalcode

  • Inverser Code

  • Komplementierungscode

Bei der Durchführung von Bitoperationen , werden sie in komplementäre Operationen umgewandelt.

Die binäre Darstellung einer positiven Zahl besteht darin, dass am Anfang der Binärzahl eine 0 steht, um eine positive Zahl darzustellen
Der ursprüngliche Code der positiven Zahl, der Umkehrcode und der Komplementcode sind gleich (drei Codes in einem)

Die binäre Darstellung einer negativen Zahl besteht darin, dass am Anfang der Binärzahl eine 1 steht, um eine negative Zahl darzustellen .
Der ursprüngliche Code einer negativen Zahl ist eine nach einer Formel berechnete Binärzahl. Der Komplementcode bedeutet, dass außer dem Vorzeichenbit alles andere invertiert ist (1 wird zu 0, 0 wird zu 1), und der Komplementcode ist das Komplement Code + 1.

Zum Beispiel -1

原码 10000000 00000000 00000000 00000001 
反码 11111111 11111111 11111111 11111110 取反
补码 11111111 11111111 11111111 11111111 加1

Was den Grund betrifft, warum 32 Bits geschrieben werden müssen, ist meines Wissens nach folgendes: Die Ganzzahl belegt 4 Bytes, jedes Byte besteht aus 8 Bits, insgesamt 32 Bits, davon ein Vorzeichenbit.

Dies ist die kurze Einführung in das Binärsystem


Klassifizierung bitweiser Operatoren in PHP

  • $a & $b  And(按位与) 将把 $a 和 $b 中都为 1 的位设为 1。

  • $a | $b  Or(按位或) 将把 $a 和 $b 中任何一个为 1 的位设为 1。

  • $a ^ $b  Xor(按位异或) 将把 $a 和 $b 中一个为 1 另一个为 0 的位设为 1。

  • ~ $a  Not(按位取反) 将 $a 中为 0 的位设为 1,反之亦然。

  • $a 02d433e7892e8ebdbc35963e2a225d71> $b  Shift right(右移) 将 $a 中的位向右移动 $b 次(每一次移动都表示“除以 2”)。

示例:

与(1 1 = 1; 1 0 = 0;0 0 = 0)

$a = 1 & 2;//进行“与”运算  两个都为1的时候为1,其他为0
// 1的补码
// 00000000 00000000 00000000 00000001
// 2的补码
// 00000000 00000000 00000000 00000010
// 结果
// 00000000 00000000 00000000 00000000 == 0
echo $a;
-----结果-----
0

或(1 1 = 1;1 0 = 1;0 0 = 0)

$a = 1 | 2;//进行“或”运算  至少有一个为1的时候为1,其他为0
// 1的补码
// 00000000 00000000 00000000 00000001
// 2的补码
// 00000000 00000000 00000000 00000010
// 结果
// 00000000 00000000 00000000 00000011 == 3
echo $a;
-----结果-----
3

异或(1 0 = 1; 1 1 = 0; 0 0 = 1)

$a = 3 ^ 2;//进行“异或”运算  一个为1,一个为0的时候为1,其他为0
// 1的补码
// 00000000 00000000 00000000 00000011
// 2的补码
// 00000000 00000000 00000000 00000010
// 结果
// 00000000 00000000 00000000 00000001 == 1
echo $a;
-----结果-----
1

取反(1 = 0; 0 = 1)注意符号位的变化。

$a = ~2;//进行“取反”运算  1变0,0变1
// 2的二进制
// 00000000 00000000 00000000 00000010
// 11111111 11111111 11111111 11111101 前面一个1,是负数
// 反码
// 11111111 11111111 11111111 11111100
// 原码
// 10000000 00000000 00000000 00000011 == -3
echo $a;
-----结果-----
-3

左移(将 $a 中的位向左移动 $b 次(每一次移动都表示“乘以 2”))

左移时右侧以零填充,符号位被移走意味着正负号不被保留。

$a = 1;
// 二进制:
// 00000000 00000000 00000000 00000001
// 左移时右侧以零填充,符号位被移走意味着正负号不被保留。
// 00000000 00000000 00000000 00000100 == 4
echo $a << 2;//将 $a 中的位向左移动2次
-----结果-----
4

右移时左侧以符号位填充,意味着正负号被保留。

$a = 4;
// 右移时左侧以符号位填充,意味着正负号被保留。 
// 00000000 00000000 00000000 00000100
// 00000000 00000000 00000000 00000001 == 1
echo $a >> 2;
-----结果-----
1

到这里位运算符算术基本说完了……

逻辑运算符

逻辑运算符也就是判断逻辑,它的返回结果一般是布尔类型,像与或非等;而PHP中的逻辑运算符有:

  • $a and $b And(逻辑与) TRUE ,如果 $a 和 $b 都为 TRUE 。

  • $a or $b Or(逻辑或) TRUE ,如果 $a 或 $b 任一为 TRUE 。

  • ! $a Not(逻辑非) TRUE ,如果 $a 不为 TRUE 。

  • $a && $b And(逻辑与) TRUE ,如果 $a 和 $b 都为 TRUE 。

  • $a || $b Or(逻辑或) TRUE ,如果 $a 或 $b 任一为 TRUE 。

逻辑与(当表达式的两边都为true的时候结果为真)

两个&符号:

$a = 2;
$b = 3;

if($a > 1 && $b > 2){ //左边的为true,右边的为true;两边都为true,结果为true;
    echo &#39;与&#39;;
}
-----结果-----
与

一个&符号:

$a = 2;
$b = 3;

if($a > 1 & $b > 2){ //左边的为true,右边的为true;两边都为true,结果为true;
    echo &#39;与&#39;;
}
-----结果-----
与

区别:两个&时:如果有一个逻辑判断表达式为假,则后面的逻辑运算就不会执行,俗称短路现象。

一个&:两边的都会判断。不管是真是假。

逻辑或(当左右两个表达式其中有一个是true的时候,为真)

两个|符号:

$a = 2;
$b = 4;

if($a > 1 || $b < 3){ //左边的为true,右边的为false;
    echo &#39;或&#39;;
}
-----结果-----
或

一个|符号:

$a = 2;
$b = 4;

if($a > 1 | $b < 3){ //左边的为true,右边的为false;
    echo &#39;或&#39;;
}
-----结果-----
或

区别:两个|时:如果有一个逻辑判断表达式为真,则后面的逻辑运算就不会执行,短路现象。

一个|:两边的都会判断。不管是真是假。

(!true = false; !false = true)

$a = true;
var_dump(!$a);
-----结果-----
bool(false)

三元运算符

语法为:条件表达式?表达式1:表达式2。
说明:问号前面的位置是判断的条件,判断结果为bool型,为true时调用表达式1,为false时调用表达式2。
其逻辑为:“如果为真执行第一个,否则执行第二个。”

$a = 456;
$b = $a > 10 ? true : false; //问号前面的结果为真,执行第一个true;
var_dump($b);
-----结果-----
bool(true);

三元运算符可以说是if…else的简化版,在以后的开发中也会经常使用到的。

错误控制运算符

介绍: PHP 支持一个错误控制运算符:@。当将其放置在一个 PHP 表达式之前,该表达式可能产生的任何错误信息都被忽略掉

当你不想用户看到错误信息可以使用。

总结

说了这么多总算把运算符的大部分都说完了,其中还有数组运算符,类型运算符等,在数组和对象的时候会说。

 以上就是PHP基础教程三之运算符的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn