二进制算术操作笔记-php


Posted on January 3, 2009


最近在想一个加密码算法,参考了DISCUZ的加密算法,位操作显然是主要的运算。

自己写的算法还有一些BUG,先不发了,总结一下PHP的一个心得,我所遇到的问题是移位操作,如果是´j´ >> 2,这个在PHP中结果是0,这个结果有点出乎意料,不过如果:´j´ & ´m´,结果是h,不知道问题在哪里。。。

GOOGLE了一下,找下如下的文字:

二进制算术操作的隐式类型转换规则:整型与浮点型时,整型转换为浮点型;整型与字符串时,字符串转换为数字,如果转换后的值是浮点型,则将整型转换为浮点型;浮点型和字符串,字符串转换为浮点型。
字符串连接操作符“.”在连接字符串之前将两个操作数都转换为字符串。
字符串在转换为数字的时候,若在字符串开头没有发现数字,字符串的数值就是0。如果字符串包括一个句点“.”或“e,E”,对该字符串求值则生成一个浮点数。

估计问题就在这了,整型与字符串时,字符串转换为数字,这的样的话,´j´转化成数字是不存在的,估计就成0了,不过问题还有:若在字符串开头没有发现数字,字符串的数值就是0,什么叫开头没有发现数字?


标签:N/A

 

在线学习答案查询入口
微信扫码联系
微信扫码联系