【发布时间】:2026-01-25 22:45:01
【问题描述】:
$str='input_arr["用户名"]';
$input_arr=array();
$$str='abcd';
print_r($input_arr);
当我运行上面的代码时,它只打印 Array()。
我希望它打印 Array([username]=>'abcd')
我做错了什么?
顺便说一句,这是在 php 4 中。
非常感谢。
编辑:我想做什么?
$input_arr 应该是一个静态变量来保存经过验证的用户输入。但是,我最近才意识到 php4.3 不支持 self::$input_arr 所以我不得不将我的脚本编辑为 bar($input_arr['name'],$value);这样我就可以将值保存到 bar() 中的静态变量中;由于当前范围内不存在 $input_arr['name'],因此我必须将其设为字符串。
【问题讨论】:
-
您使用的数组错误。变量变量很难调试。你到底想做什么?我确信有更好的方法来做到这一点。
-
我用这个做了一些基本的测试,你是对的,它不起作用。最后,当我尝试通过变量变量摆弄数组元素时,它停止工作。如果我把整个数组弄乱了,我尝试的一切都很好。但是看起来你确实是在渡湖取水,你到底想完成什么?
-
我添加了一些关于我想要做什么的信息。