You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP 7.4 动态变量名原花括号赋值语法废弃,如何实现相同效果

原有$total{$column}写法触发报错的原因是PHP7.4+将该语法统一识别为数组/字符串偏移访问的废弃语法,不再支持用于动态变量名的拼接解析,可通过以下两种兼容方案解决:

方案1:使用标准可变变量语法

直接将拼接后的变量名字符串用大括号包裹,不会触发废弃警告,实现效果和原有写法完全一致:

// 动态变量赋值
${'total' . $column} = 0;

// 动态变量输出
echo ${'total' . $column};

实际运行示例:

$column = 'A';
${'total' . $column} = 20;
$column = 'B';
${'total' . $column} = 10;

echo $totalA; // 输出 20
echo $totalB; // 输出 10

方案2(更推荐):使用关联数组替代动态变量

动态变量会降低代码可读性和可维护性,优先推荐用关联数组实现相同需求,完全兼容所有PHP版本:

// 赋值
$total[$column] = 0;

// 输出
echo $total[$column];

这种写法后续批量处理数据也更方便,不需要额外拼接变量名。

内容的提问来源于stack exchange,提问作者Delickate

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 18:09:03