PHP7 其他修改


Posted in PHP onMarch 09, 2021
  • CURL模块:禁止禁用CURLOPT_SAFE_UPLOAD选项,通过curl上传文件必须使用curl_file/CURLFILE接口。

  • DATE模块:mktime()和gmmktime()函数移除了$is_dst parameter参数。

  • DBA模块:dba_delete() 如果在inifile里面没有找到key的时候会返回false。
  • GMP模块:必须用libgmp 4.2版本以上。gmp_setbit() and gmp_clrbit()如果传入的index为负数的话,会返回false。
  • Intl模块:移除了别名函数datefmt_set_timezone_id() 和IntlDateFormatter::setTimeZoneID(),用datefmt_set_timezone() 和IntlDateFormatter::setTimeZone()
  • libxml模块:新增ibxml 2.9.0引入的LIBXML_BIGLINES 选项,并在错误报告中增加了行号> 16-bit的支持。
  • Mcrypt模块:移除了mcrypt_generic_end() mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() 和mcrypt_ofb()
  • Opcache:移除了opcache.load_comments配置项,现在注释加载总是被激活的。
  • OpenSSL:移除了"rsa_key_size"、"CN_match" 、"SNI_server_name" 选项。
  • PCRE:移除了 /e (PREG_REPLACE_EVAL) 修饰符的支持,使用preg_replace_callback()来代替。
  • PDO_pgsql:删除了PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT选项。
  • Standard:删除了setlocale()函数里面对字符串类型的支持,使用LC_*常量。删除了set_magic_quotes_runtime() magic_quotes_runtime().
  • JSON:json_decode()会拒绝与RFC 7159不兼容的数字格式。json_decode第一个参数是空值的时候会返回json语法错误。
  • Stream:删除别名函数set_socket_blocking()
  • XSL:删除xsl.security_prefs 选项。
  • session
    • session_start()可以接受所有的INI设置,可以用数组的方式传入,比如:['cache_limiter'=>'private']
    • save handler接受validate_sid(), update_timestamp() ,可用来检查sid是否存在,更新session数据的时间戳。
    • 增加了SessionUpdateTimestampHandlerInterface,这个接口里面定义了validateSid(), updateTimestamp()方法。
    • session.lazy_write(default=On) 配置项可以允许只有session数据有变化时才写数据。


PHP 7 Session 选项

PHP 7 session_start()函数可以接收一个数组作为参数,可以覆盖php.ini中session的配置项。

这个特性也引入了一个新的php.ini设置(session.lazy_write),默认情况下设置为 true,意味着session数据只在发生变化时才写入。

除了常规的会话配置指示项, 还可以在此数组中包含 read_and_close 选项。如果将此选项的值设置为 TRUE, 那么会话文件会在读取完毕之后马上关闭, 因此,可以在会话数据没有变动的时候,避免不必要的文件锁。

实例

把cache_limiter设置为私有的,同时在阅读完session后立即关闭。

<?php
session_start([
   'cache_limiter' => 'private',
   'read_and_close' => true,
]);
?>

 

PHP 相关文章推荐
攻克CakePHP系列二 表单数据显示
Oct 22 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
Apr 10 PHP
PHP无法访问远程mysql的问题分析及解决
May 16 PHP
PHP JS Ip地址及域名格式检测代码
Sep 27 PHP
php上传文件,创建递归目录的实例代码
Oct 18 PHP
网页上facebook分享功能具体实现
Jan 26 PHP
thinkphp控制器调度使用示例
Feb 24 PHP
php保存信息到当前Session的方法
Mar 16 PHP
Laravel重写用户登录简单示例
Oct 08 PHP
Yii2.0中使用js异步删除示例
Mar 10 PHP
PHP abstract 抽象类定义与用法示例
May 29 PHP
php中配置文件保存修改操作 如config.php文件的读取修改等操作
May 12 PHP
PHP7 标准库修改
Mar 09 #PHP
PHP7 其他语言层面的修改
Mar 09 #PHP
PHP7 错误处理机制修改
Mar 09 #PHP
PHP7 字符串处理机制修改
Mar 09 #PHP
PHP7 整型处理机制修改
Mar 09 #PHP
PHP7 参数处理机制修改
Mar 09 #PHP
PHP7 foreach() 函数修改
Mar 09 #PHP
You might like
PHP生成Flash动画的实现代码
2010/03/12 PHP
php静态文件返回304技巧分享
2015/01/06 PHP
多广告投放代码 推荐
2006/11/13 Javascript
来自qq的javascript面试题
2010/07/24 Javascript
JavaScript与Image加载事件(onload)、加载状态(complete)
2011/02/14 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
2014/03/03 Javascript
利用jQuery实现可以编辑的表格
2014/05/26 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
AngularJs表单验证实例详解
2016/05/30 Javascript
使用递归遍历对象获得value值的实现方法
2016/06/14 Javascript
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
JS数组操作之增删改查的简单实现
2017/08/21 Javascript
详解react-native WebView 返回处理(非回调方法可解决)
2018/02/27 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
微信小程序实现图片滚动效果示例
2018/12/05 Javascript
JavaScript事件冒泡机制原理实例解析
2020/01/14 Javascript
一篇文章看懂JavaScript中的回调
2021/01/05 Javascript
JS中循环遍历数组的四种方式总结
2021/01/23 Javascript
python字典操作实例详解
2017/11/16 Python
如何在python字符串中输入纯粹的{}
2018/08/22 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
详解Python是如何实现issubclass的
2019/07/24 Python
基于python检查矩阵计算结果
2020/05/21 Python
Shopty西班牙:缝纫机在线销售
2018/01/26 全球购物
车间主管岗位职责
2013/11/14 职场文书
缓刑人员的思想汇报
2014/01/11 职场文书
《毛主席在花山》教学反思
2014/04/20 职场文书
《沙漠中的绿洲》教学反思
2014/04/24 职场文书
马丁路德金演讲稿
2014/05/19 职场文书
2015试用期转正工作总结
2014/12/12 职场文书
2016年元旦寄语
2015/08/17 职场文书
优质护理心得体会
2016/01/22 职场文书
pytorch加载预训练模型与自己模型不匹配的解决方案
2021/05/13 Python
python中的sys模块和os模块
2022/03/20 Python
python小型的音频操作库mp3Play
2022/04/24 Python
Java Spring读取和存储详细操作
2022/08/05 Java/Android