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 相关文章推荐
PHP 数组入门教程小结
May 20 PHP
关于PHP内存溢出问题的解决方法
Jun 25 PHP
php中unserialize返回false的解决方法
Sep 22 PHP
浅谈php提交form表单
Jul 01 PHP
php检查字符串中是否有外链的方法
Jul 29 PHP
PHP使用trim函数去除字符串左右空格及特殊字符实例
Jan 07 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
PHP计算近1年的所有月份
Mar 13 PHP
php实现自定义中奖项数和概率的抽奖函数示例
May 26 PHP
微信开发之获取JSAPI TICKET
Jul 07 PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
Sep 13 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
Mar 30 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
php注入实例
2006/10/09 PHP
PHP数组无限分级数据的层级化处理代码
2012/12/29 PHP
让JavaScript和其它资源并发下载的方法
2014/10/16 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
Angularjs为ng-click事件传递参数
2017/06/15 Javascript
JS滚动到指定位置导航栏固定顶部
2017/07/03 Javascript
vue中引入第三方字体文件的方法示例
2018/12/17 Javascript
三步实现ionic3点击退出app程序
2019/09/17 Javascript
js实现验证码干扰(静态)
2021/02/22 Javascript
[02:49]DAC2018决赛日TOP5 LGD开启黑暗之门绝杀VP
2018/04/08 DOTA
python中assert用法实例分析
2015/04/30 Python
Python列表list解析操作示例【整数操作、字符操作、矩阵操作】
2017/07/25 Python
详解使用 pyenv 管理多个版本 python 环境
2017/10/19 Python
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
Python数据集切分实例
2018/12/08 Python
python3实现网络爬虫之BeautifulSoup使用详解
2018/12/19 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
python如何实现word批量转HTML
2020/09/30 Python
英国发展最快的在线超市之一:Click Marketplace
2021/02/15 全球购物
专科毕业生就业推荐信
2013/11/01 职场文书
大四学生毕业自荐信
2013/11/07 职场文书
高中生学习生活的自我评价
2013/11/27 职场文书
运动会领导邀请函
2014/01/10 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
建筑专业毕业生自荐信
2014/05/25 职场文书
小学班主任培训方案
2014/06/04 职场文书
单位消防安全责任书
2014/07/23 职场文书
家庭贫困证明
2014/09/23 职场文书
租车协议书
2015/01/27 职场文书
该怎么书写道歉信?
2019/07/03 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android
Apache Pulsar结合Hudi构建Lakehouse方案分析
2022/03/31 Servers