php
飞向月球
这个作者很懒,什么都没留下…
展开
-
关于php int 类型
在写接口的时候经常需要对php的数字进行处理,当客户端发送数据过来的时候都认为数据是不可信的。 如果是整数的话一般直接强转,例如 $num = (int)$num 如果是一个浮点数的话,一般判断是否为数字例如 is_numeric($num) 但是使用(int)强行转换真的安全吗? 也就是说php官网说 如下解释 整型数的字长和平台有关,尽管通常最大值是大约二十亿(32 位有符号)。64 位平台下...原创 2019-02-28 10:43:14 · 1666 阅读 · 0 评论 -
关于php按位非如何理解
这是PHP5权威编程对按位非的描述 运行以下代码的输出结果为 -4,为什么呢? <?php $a = 3; var_dump(~$a); 预备知识,计算机原码,反码,补码 可以参考这个博文不看也没有关系,下面的内容也可以理解。 代码中 $a 的值是数字3,对应的二进制格式就是 0000 0011,在计算机中这叫原码,但是计算机存储的是补码,对于正数而言,原码,反码,补码,三码一致。对于负...原创 2019-08-15 10:46:11 · 333 阅读 · 0 评论 -
关于TP5文件缓存的Hash碰撞
最近看了一下Tp5的源码,看到文件缓存的时候发现了一个明显的漏洞,文件缓存路径明显是通过md5值映射的。很容易发生hash碰撞,使用场景需要斟酌,尽量不要大量使用。其实也不算是漏洞吧,毕竟用户量多的公司可能就不用文件做缓存了,这个缓存用来做一些小项目还是不错的。 示例代码如下 $a = 0xd131dd02c5e6eec4693d9a0698aff95c2fcab58712467e...原创 2019-09-01 13:13:43 · 426 阅读 · 0 评论