Die bitweise UND-Operation von PHP besteht darin, Zahlen für Bitoperationen in ein Binärformat umzuwandeln.
Die Erklärung im PHP-Handbuch lautet
$a & $b | And(按位与) | 将把 $a 和 $b 中都为 1 的位设为 1。 |
1. Operationsmethode von & (Paritätsbeurteilung)
Führen Sie eine bitweise UND-Operation für eine Ganzzahl und „1“ durch. Das Ergebnis der Operation ist „0“, was bedeutet, dass es eine gerade Zahl ist Zahl Das Operationsergebnis ist „1“ und zeigt eine ungerade Zahl an.
$a = 3&1; echo '3&1:'.$a ; //<span style="font-family: Simsun;font-size:14px;">3&1:1</span> echo '<br>'; $b = 4&1; echo '4&1:'.$b; //<span style="font-family: Simsun;font-size:14px;">4&1:0</span>
'3' Binär: 11
'1' Binär: 01 Dann ist das binäre Operationsergebnis von 3&1 01, konvertiert in dezimal ist es '1';
'4' Binär: 100
'1' Binär: 001 Dann ist das binäre Operationsergebnis von 4&1 000 und in Dezimalzahl umgewandelt ist '0';
PS: Das Symbol „%“ (Modulo-Operation) kann auch zur Berechnung der Parität verwendet werden. Das Ausgabeergebnis von „3%2“ ist 1 und das Ausgabeergebnis von „4 %2" ist 0. Die Operationseffizienz von „%“ ist etwas höher als die des „&“-Operators.
function getMillisecond() { list($t1, $t2) = explode(' ', microtime()); return (float)sprintf('%.0f',(floatval($t1)+floatval($t2))*1000); } /* 判断数字的奇偶性 */ $a = getMillisecond(); for($i=1;$i<10000000;$i++) $i&1; $b = getMillisecond(); echo '&执行1千万次计算毫秒耗时:'.($b-$a); //&执行1千万次计算毫秒耗时:1068 echo '<br>'; $c = getMillisecond(); for($i=1;$i<10000000;$i++) $i%2; $d = getMillisecond(); echo '%执行1千万次计算毫秒耗时:'.($d-$c); //%执行1千万次计算毫秒耗时:1035
Angenommen, das Benutzerberechtigungszuweisungsmodul in einem System setzt Berechtigungen auf 1=>Anzeigen, 2=>Hinzufügen, 4 =>Ändern, 8=>Löschen: Um Benutzerberechtigungen auf diese Weise zu speichern, müssen Sie nur eine Ganzzahl in der Datenbank speichern und es ist nicht erforderlich, getrennte Zeichenfolgen zu speichern.
Wenn der Benutzer über Berechtigungen zum Hinzufügen und Anzeigen verfügt, lautet der Funktionscode: 1+2 = 3; wenn der Benutzer über alle Berechtigungen verfügt, lautet der Funktionscode: 1+2+4+8 = 15; >
Alle Benutzerberechtigungen sind 12Überprüfen Sie, ob die Benutzerberechtigungen Änderungsberechtigungen haben: 12&4. Das Ergebnis ist 4, was bedeutet, dass der Benutzer Änderungsberechtigungen hat. Überprüfen Sie, ob der Benutzer neue Berechtigungen hat: 12&2. Das Ergebnis ist 0, was bedeutet, dass keine neuen Berechtigungen vorhanden sind. Alle Benutzer mit Änderungsberechtigungen in der Datenbank suchen: Wählen Sie * aus Benutzer, wobei (user_mod&4) > aus, um alle Benutzer mit Änderungsberechtigungen zu finden.Das Obige stellt die Anwendungspraxis des bitweisen PHP-AND-Operators (&) vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.