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 相关文章推荐
JAVA/JSP学习系列之七
Oct 09 PHP
我的论坛源代码(一)
Oct 09 PHP
PHP 数组教程 定义数组
Oct 23 PHP
php 模拟get_headers函数的代码示例
Apr 27 PHP
Yii使用find findAll查找出指定字段的实现方法
Sep 05 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
浅谈PHP接收POST数据方式
Jun 05 PHP
ZF框架实现发送邮件的方法
Dec 03 PHP
Laravel+jQuery实现AJAX分页效果
Sep 14 PHP
PHP对象克隆clone用法示例
Sep 28 PHP
Yii2 如何在modules中添加验证码的方法
Jun 19 PHP
PDO::getAttribute讲解
Jan 28 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
header()函数使用说明
2006/11/23 PHP
php实现的一个很好用HTML解析器类可用于采集数据
2013/09/23 PHP
php使用Cookie控制访问授权的方法
2015/01/21 PHP
php实现图片以base64显示的方法
2016/10/13 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
Laravel模糊查询区分大小写的实例
2019/09/29 PHP
让回调函数 showResponse 也带上参数的代码
2007/08/13 Javascript
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
关于JS字符串函数String.replace()
2013/04/07 Javascript
浅谈JavaScript Date日期和时间对象
2014/12/29 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
AngularJS的依赖注入实例分析(使用module和injector)
2017/01/19 Javascript
jQuery实现鼠标滑过预览图片大图效果的方法
2017/04/26 jQuery
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
vue数据操作之点击事件实现num加减功能示例
2019/01/19 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
vue父子组件通信的高级用法示例
2019/08/29 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
JS实现京东商品分类侧边栏
2020/12/11 Javascript
[03:02]辉夜杯主赛事第二日 每日之星
2015/12/27 DOTA
python发送邮件实例分享
2017/07/28 Python
python实现按长宽比缩放图片
2018/06/07 Python
Python基于多线程实现ping扫描功能示例
2018/07/23 Python
python对列进行平移变换的方法(shift)
2019/01/10 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
2019/08/20 Python
Python 类属性与实例属性,类对象与实例对象用法分析
2019/09/20 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
英国男士时尚网站:Dandy Fellow
2018/02/09 全球购物
人事专员的职责
2014/02/26 职场文书
代办委托书怎样写
2014/04/08 职场文书
请假条格式范文
2014/04/10 职场文书
考核评语大全
2014/04/29 职场文书
2015年前台文员工作总结
2015/05/18 职场文书
Mac环境Nginx配置和访问本地静态资源的实现
2021/03/31 Servers
世界十大狙击步枪排行榜
2022/03/20 杂记