PHP运算符(四)”位运算符“实例讲解
我们已经讲解了PHP运算符中的“php算术运算符”,“php字符串运算符”,“赋值运算符”,今天给大家详细介绍一下PHP运算符中的“位运算符”。
位运算符在PHP中不经常用到,但是他的用处还是很大,下面的内容我们会举例说明一下位运算符的用法。
位运算符是指对二进制位从低位到高位对齐后进行运算,它允许对整型数中指定的位进行求值和操作。
在PHP中的为运算符如下表所示
运算符 | 说明 | 例子 |
& | 按位与 | $m & $n |
| | 按位或 | $m | &$n |
^ | 按位异或 | $m ^ $n |
~ | 按位非或按位取反 | $m ~ $n |
<< | 左移 | $m << $n |
>> | 右移 | $m >> $n |
下面我们用例子来上面一下上表中的运算符
<?php $m=1; //1=0 00000001 $n=2; //2=00000010 $mn=$m&$n; echo $mn."<br/>"; $mn=$m^$n; echo $mn."<br/>"; $mn=$m|$n; echo $mn; ?>
代码运行结果:
例子解释:
$m&$n : 二者都为 1 时为 1 ,否则为 0。即把 $a 和 $b 中都为 1 的位设为 1 ,否则设为 0 。
00000001 ← $m
& 00000010 ← $b
比较结果为00000000,所以输出0
$m^$n :在按位亦或的过程中,不同为1,相同为0。
00000001 ← $m
^ 00000010 ← $n
所以结果为00000011,进而输出3。
$m|$n: 在按位或的过程中,有1为1,全0为0,
00000001 ← $m
| 00000010 ← $n
则结果为00000011,所以输出3
上面的例子讲了“按位或”,“按位或”,“按位异或”,下面我们再来看一下后面的三种示例
按位非或按位取反示例,代码如下
<?php $m = 2; $m1 = ~$m; echo $m1; ?>
运行结果
此时我们的运行结果为-3,这里需要注意。
注:在计算机中,负数以其正值的补码形式表达。
1: 2的32位原码为 0000 0000 0000 0000 0000 0000 0000 0010
2: 按位取反后为 1111 1111 1111 1111 1111 1111 1111 1101
由于最前面的数为1,符号位为1,即为负数,所以,以其正值的补码形式表示为:(符号位不变,按位取反,末尾加1)
1000 0000 0000 0000 0000 0000 0000 0011
所以输出为-3
左移右移代码示例
<?php $m = 12; // 12=00001100 $n = 3; // 3=00000011 $mn= $m << $n; echo $mn ."<br/>"; $mn= $m >> $n; echo $mn ; ?>
运行结果:
示例解释:
$m<<$n:将 $m 中的位向左移动 $n 次(每一次移动都表示“乘以 2”,即“乘以 2$b ”)。
0000 1100 ← $m
<< 0110 0000 左移3个,空出的位置用 0 补充
0110 0000 = 96
$m>>$n:将 $m中的位向右移动 $n 次(每一次移动都表示“除以 2”,即“乘以 2 -$b ”)。
0000 1100 ← $m
<< 0000 0001 右移3个,多出的位置截掉
0000 0001 = 1
上面的内容就是PHP运算中的“位运算符”的详细内容,如果有什么不懂的,可以关注我们PHP中文网,在上面进行留言,我们将第一时间给你解答或者在PHP中文网搜索,也许能找到你想的。下一节,我们将详细介绍PHP运算中的逻辑运算符。
Atas ialah kandungan terperinci PHP运算符(四)”位运算符“实例讲解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

CakePHP ialah rangka kerja MVC sumber terbuka. Ia menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP mempunyai beberapa perpustakaan untuk mengurangkan beban tugas yang paling biasa.

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,
