PHP7 参数处理机制修改


Posted in PHP onMarch 09, 2021

一、重复参数命名不再支持。

重复的参数命名不再支持。比如下面的代码执行的时候会报错:

public function foo($a, $b, $unused, $unused) {
          // ...
}

应该没有人这样用吧。

 

二、func_get_arg和func_get_args()调整

func_get_arg()和func_get_args()这两个方法返回参数当前的值,而不是传入时的值。当前的值有可能会被修改   

function foo($x) 
{
    $x++;
    var_dump(func_get_arg(0));
}
foo(1);

上面的代码会打印2, 而不是1。如果想打印原始的值,调用的顺序调整下即可。

 

三、同样在打印异常回溯信息的时候也是显示修改后的值。

function foo($x) 
{
    $x = 42;
    throw new Exception;
}
foo("string");

PHP7的运行结果:Stack trace:

#0 file.php(4): foo(42)
#1 {main}

PHP5的运行结果:Stack trace:

#0 file.php(4): foo('string')
#1 {main}

这个调整不会影响代码的行为,不过在调试的时候需要注意这个变化。

其他和参数有关的函数都是同样的调整,比如debug_backtrace() .

PHP 相关文章推荐
PHP4之真OO
Oct 09 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
一些常用的php简单命令代码集锦
Sep 24 PHP
php自动跳转中英文页面
Jul 29 PHP
php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
May 24 PHP
PHP异步调用socket实现代码
Jan 12 PHP
将博客园(cnblogs.com)数据导入到wordpress的代码
Jan 06 PHP
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
Jun 18 PHP
PHP时间格式控制符对照表分享
Jul 23 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
Jun 23 PHP
php对象在内存中的存在形式分析
Feb 03 PHP
PHP观察者模式定义与用法实例分析
Mar 22 PHP
PHP7 foreach() 函数修改
Mar 09 #PHP
PHP7 list() 函数修改
Mar 09 #PHP
PHP7变量处理机制修改
Mar 09 #PHP
PHP7新特性
Mar 09 #PHP
Yii 实现数据加密和解密
Mar 09 #PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
Mar 09 #PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
Mar 09 #PHP
You might like
上海永华YH-R296(华普R-96)12波段立体声收音机的分析和打理
2021/03/02 无线电
人大复印资料处理程序_查询篇
2006/10/09 PHP
php通过记录IP来防止表单重复提交方法分析
2014/12/16 PHP
初识laravel5
2015/03/02 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
2015/10/23 PHP
浅谈Laravel中的一个后期静态绑定
2017/08/11 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
js数组循环遍历数组内所有元素的方法
2014/01/18 Javascript
Jquery树插件zTree用法入门教程
2015/02/17 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
javascript中return,return true,return false三者的用法及区别
2015/11/17 Javascript
Bootstrap选项卡学习笔记分享
2017/02/13 Javascript
JS简单实现获取元素的封装操作示例
2017/04/07 Javascript
js字符串与Unicode编码互相转换
2017/05/17 Javascript
JavaScript数组去重的多种方法(四种)
2017/09/19 Javascript
使用vue-cli导入Element UI组件的方法
2018/05/16 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
python中import reload __import__的区别详解
2017/10/16 Python
python 定时修改数据库的示例代码
2018/04/08 Python
基于Python列表解析(列表推导式)
2018/06/23 Python
详解Python下载图片并保存本地的两种方式
2019/05/15 Python
python日期相关操作实例小结
2019/06/24 Python
在tensorflow以及keras安装目录查询操作(windows下)
2020/06/19 Python
浅谈优化Django ORM中的性能问题
2020/07/09 Python
html特殊符号示例 html特殊字符编码对照表
2014/01/14 HTML / CSS
斯洛伐克时尚服装网上商店:Cellbes
2016/10/20 全球购物
捷克领先的户外服装及配件市场零售商:ALPINE PRO
2018/01/09 全球购物
师范大学应届生求职信
2013/11/21 职场文书
应届专科生个人的自我评价
2014/01/05 职场文书
三八节主持词
2014/03/17 职场文书
毕业设计说明书
2014/05/07 职场文书
地道战观后感
2015/06/04 职场文书
python 实现两个变量值进行交换的n种操作
2021/06/02 Python
「偶像大师 MILLION LIVE!」七尾百合子手办开订
2022/03/21 日漫
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers