今天在Drupal社区看到这样一个Bug。 当Windows平台在PHP = 5.3.10时,如果一个PHP的文件的字符串长度正好是4096的倍数,运行或者调用这个PHP文件,将会直接发生PHP崩溃。 PHP官方的bug页面在https://bugs.php.net/bug.php?id=60758 测试bug 于是我便在本机wi

今天在Drupal社区看到这样一个Bug。

当Windows平台在PHP <= 5.3.10时,如果一个PHP的文件的字符串长度正好是4096的倍数,运行或者调用这个PHP文件,将会直接发生PHP崩溃。

PHP官方的bug页面在https://bugs.php.net/bug.php?id=60758

测试bug

于是我便在本机windows上做了这个测试,果然PHP 5.3.9和PHP 5.3.10 存在这个bug,而PHP 5.3.8 却不存在这个问题,当然是神奇。

下面是代码:

为了解决问题,要么你升级PHP版本或者不让PHP文件的字符串长度为4096的倍数。

我假设你升级PHP是最佳的方案,如果不行的话,那么就得这样修改你的PHP文件。

PHP解决方法

在写入一个PHP文件时,事先判断PHP版本和文件字符串长度。

条件判断:version_compare(PHP_VERSION, ’5.3.10′, ‘<=’) ,这段代码的意思是PHP版本小于等于5.3.10。

!(strlen($data) % 4096),这段代码的意思字符串长度是4096的倍数

当条件满足时,用正则表达式在

(...)

Read the rest of 解决PHP文件字符串长度为4096倍数时的bug (67 words)

© lixiphp for LixiPHP - 致力于PHP高级编程!, 2013. | Permalink | No comment |

Add to del.icio.us

Post tags: Bug, PHP, PHP 5.3.10, PHP 5.3.9

Feed enhanced by Better Feed from Ozh

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

PHP是4的倍数但不是6的倍数,解决PHP文件字符串长度为4096倍数时的bug相关推荐

  1. php验证数字100倍数,js如何实现一个文本框只能输入数字 且是100的倍数

    js如何实现一个文本框只能输入数字 且是100的倍数? php var a = 123,b = 200; /\d/.test(a) && a % 100 == 0;//false /\ ...

  2. 在MFC中使用Cstring

    此文介绍了关于MFC使用CString的资料,可一参考一下. 转自于VC知识库:http://www.vckbase.com/index.php/wv/829 通过阅读本文你可以学习如何有效地使用 C ...

  3. CString 操作指南

    原著:Joseph M. Newcomer 翻译:littleloach 原文出处:codeproject:CString Management 通过阅读本文你可以学习如何有效地使用 CString. ...

  4. CString 是一种很有用的数据类型

    CString 是一种很有用的数据类型.它们很大程度上简化了MFC中的许多操作,使得M FC在做字符串操作的时候方便了很多. 不管怎样,使用 CString有很多特殊的技巧,特别是 对于纯C背景下走出 ...

  5. 最大子序列和问题c语言力扣,力扣

    力扣刷题-第1题:两数之和2021-05-24 22:03:30 目录 一.写在最前面 二.题目信息 解题思路 一.写在最前面 致愿意重新开始努力的自己: 希望你能够持续的坚持,不半途而废. 二.题目 ...

  6. 河工计院ACM2022寒假培训题单以及超详细题解

    目录 货仓选址 校门外的树 奖学金 蛇形矩阵 找硬币 回文平方 品种邻近 平方矩阵 II 十三号星期五 阶乘 干草堆 火星人 整数集合划分 最大的和 剪绳子 分巧克力 a^b 数独检查 ISBN号码 ...

  7. CString 彻底解析

    通过阅读本文你可以学习如何有效地使用 CString. CString 是一种很有用的数据类型.它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多.不管怎样,使用CStr ...

  8. CString的彻底解析

    原文出处:codeproject:CString Management 通过阅读本文你可以学习如何有效地使用 CString. CString 是一种很有用的数据类型.它们很大程度上简化了MFC中的许 ...

  9. CString彻底分析,很强悍的啊

    转自:http://wmnmtm.blog.163.com/blog/static/3824571420113673647595/?suggestedreading&wumiiCString ...

最新文章

  1. JUnit基础及第一个单元测试实例(JUnit3.8)
  2. iOS 设备的网页调试工具-Firebug
  3. 多机器人路径规划的代码_知荐 | 地平线机器人算法工程师总结六大路径规划算法...
  4. 03Oracle Database 物理结构,逻辑结构
  5. 韩国各大银行纷纷开始引进区块链技术
  6. android捕获全局异常,并对异常做出处理
  7. Excel小账本的来历
  8. 记第一次在程序中埋彩蛋
  9. php函数改变图片大小,php实现修改图片大小的方法
  10. UG10.0 工程图 在注释的时候 引用/插入 组件尺寸
  11. python归一化nan加扰动_标准化和归一化对机器学习经典模型的影响
  12. Android中的PID,UID,TID
  13. 在服务器创建并进入虚拟环境
  14. 电路考点之电流和电压参考方向的设定
  15. 请求与通配符 mime 映射相匹配。请求映射到静态文件处理程序。如果有不同的前提条件,请求将映射到另一个处理程序。...
  16. JavaScript 的addEventListener() 事件监听详解!
  17. CSS特效(二):利用html和css制作毛玻璃特效和按钮动画效果
  18. python(x,y)安装和使用
  19. 事务统计系统软件 php,PHP数据库事务处理
  20. 将List集合按长度切分

热门文章

  1. CLOSE_WAIT、CLOSE_WAIT原因,危害,如何避免
  2. 基于springboot的高校羽毛球馆信息管理系统的设计与实现
  3. JavaEE_Spring_Spring中的事务声明, 事务隔离和事务传播等
  4. 17.商品业务-首页
  5. 应届大学生如何找工作,如何选择,如何投简历,如何面试
  6. C#界面里Control.Enabled 属性的使用
  7. 实操笔记02-random.normal函数
  8. 大脸猫讲逆向之ARM汇编中PC寄存器详解
  9. java中常见的几个内置类
  10. Defi+房地产=房地产未来