更改数组中的值时出现问题

时间:2010-05-24 19:51:33

标签: php arrays

我有一个多维数组,每个值有4个条目 - (名字,姓氏,电子邮件,密码)。我正在尝试格式化密码值,以便我可以将其插入数据库。如你所见,我的结果不是我需要的。为什么这是结果,我该怎么做才能得到我的预期结果?感谢

php > $newlines[1][3] = "PASSWORD($newlines[1][3)]";  
php > echo $newlines[1][3];  
PASSWORD(Array[3)]

3 个答案:

答案 0 :(得分:4)

你有一个错字:

php > $newlines[1][3] = "PASSWORD($newlines[1][3)]";
                                                ^

但这不是唯一的问题。您正在访问多维数组,因此,您必须将数组访问放入括号{}。否则,PHP只会将变量替换为第一个索引(即$newlines[1])。另见variable parsing

由于$newlines[1][3]很可能是一个字符串,你还应该在它周围加上引号:

php > $newlines[1][3] = "PASSWORD('{$newlines[1][3]}')";

甚至在我看来更好:

php > $newlines[1][3] = "PASSWORD('" . $newlines[1][3] . "')";

答案 1 :(得分:2)

"PASSWORD($newlines[1][3)]"

应该是

"PASSWORD({$newlines[1][3]})"

答案 2 :(得分:1)

这似乎是引号放置问题。您需要函数Password()的结果而不是字符串“Password(-arguments - )”。

删除右侧的引文:

php > $newlines[1][3] = password($newlines[1][3]);