[PHP] 位元運算 (Bitwise operation)及和PERL比較

URL Link //n.sfs.tw/10950

2017-04-02 09:03:11 By 張○○

PHP 的位元運算 (Bitwise operation) 和 perl 不太一樣的只有符號的差別,其餘的運算是相同的,下表將差別列出來:

Operation PHP PERL 說明
AND & &  
OR | |  
XOR ^ ^  
NOT ~ ! 兩者不同,有關PHP和Perl的NOT運算請參考下面比較表
Complement ~ PHP 無補數運算
SHIFT RIGHT >> >>  
SHIFT LEFT << <<  

 

PHP
$A 原值 !$A gettype( !$A) is_null( !$A)
0 1 boolean false
1 false boolean false
"" 1 boolean false

 

Perl
$A !$A defined( !$A) ?
0 1 true
1 null true
"" 1 true

說明

PHP和Perl兩者Not的不同點在於:
Perl 沒有 boolean 這種型態,所以他的 !真值 = 空值 null,PHP一經NOT 計算後就會變成boolean值。

PHP和Perl兩者Not的相同點在於:
兩者的0, 空值""的NOT值都等於1

延伸閱讀

[PERL] 位元運算 Bitwise operation@精讚


原文 2009-11-25 14:29:29