动态变量名 php 7.4 和赋值
Posted
技术标签:
【中文标题】动态变量名 php 7.4 和赋值【英文标题】:Dynamic variable name php 7.4 and value assigment 【发布时间】:2021-11-10 10:17:26 【问题描述】:我曾经像这样创建动态变量并为它们赋值
$total$column = 0;
然后像这样输出
echo $total$column;
但是在 php 7.4 中,大括号已经被废弃,我们必须使用 [] 大括号来代替。当我们处理数组时很好。但是在创建动态变量名时。它返回以下错误。
不推荐使用:带花括号的数组和字符串偏移访问语法在 .....
中已弃用
简短的总结是。我想创建动态变量名并像这样赋值
$totalA = 20;
$totalB = 10;
这个方法 $total$column 在旧的 php 版本中运行良好。但无法在 php 7.4 中得到相同的结果。
有没有人指导一下。
谢谢
【问题讨论】:
变量变量不好。请改用数组和适当的字符串键。在使用之前格式化密钥,sprintf()
【参考方案1】:
这段代码也可以在最新版本的 PHP 中运行。
$column = 'A';
$"total$column" = 20;
echo $"total$column"; // 20
echo $totalA; // 20
【讨论】:
从 PHP8 开始,这确实是使用可变变量的一种方式(参见docs)。以上是关于动态变量名 php 7.4 和赋值的主要内容,如果未能解决你的问题,请参考以下文章