谢谢你看一下:)
我知道我可以在javascript数组中一次添加多个对象,如下所示:
<script>
var myCarsArray = ["Saab","Volvo","BMW"];
alert("The second element in my array = "+myCarsArray[1]);
</script>
此警报'我的数组中的第二个元素=沃尔沃'。
我想简单地将数组值存储在数据库中作为字符串 - 所以在数据库中会有一个名为'My_Cars_Array_Database_String_Value'的字段 我会将我的数组值放在那里,就像我用javascript将它们放在数组中一样 - 所以字符串看起来像这样:
“萨伯”, “沃尔沃”, “BMW”
现在我使用MySQL获取字符串值并使用PHP回显该值,如此
<script>
var myCarsArray = [<?php echo $My_Cars_Array_Database_String_Value; ?>];
alert("The second element in my array = "+myCarsArray[1]);
</script>
此警报'我的数组中的第二个元素= S'!它将整个字符串视为一个数组。
所以我能让这个工作的唯一方法就是以这种方式使用'eval':
<script>
var myCarsArray = eval("["+<?php echo $My_Cars_Array_Database_String_Value; ?>+"]");
alert("The second element in my array = "+myCarsArray[1]);
</script>
这正确警告'我的阵列中的第二个元素=沃尔沃'。
我的问题是:如何将字符串保存到数据库中,以便我可以将其直接插入到javascript数组中,使用:
myCarsArray = [<?php echo $My_Cars_Array_Database_String_Value; ?>];
没有使用任何类型的循环 - 我理解如何通过循环实现这一点 - 我不想使用循环。或者'eval'方法是唯一的方法吗?
澄清:
关于这篇文章的问题是如何保存javascript可用的数组值 - 作为MySQL的字符串 - 以后可以通过 -
轻松插入到数组中myCarsArray = [<?php echo $My_Cars_Array_Database_String_Value; ?>];
方法
AND可以不使用循环或'eval'语句来完成吗?
提前致谢 - 我期待您的回复。
此致 肯
答案 0 :(得分:0)
我的PHP语法很生疏,但您应该能说出类似的内容:
<php
<script>
echo "var array = " . json_encode($My_Cars_Array_Database_String_Value) . ";";
</script>
?>
答案 1 :(得分:0)
MultiDimeArray = { SomeOtherValues:"SomeValue",
myCarsArray:"<?php echo $My_Cars_Array_Database_String_Value; ?>"
};
假设它应该是
MultiDimeArray = { SomeOtherValues:"SomeValue",
myCarsArray:[<?php echo $My_Cars_Array_Database_String_Value; ?>]
};
在你的输出中: myCarsArray:“'萨博','沃尔沃','宝马'”而不是myCarsArray: ['萨博','沃尔沃',' BMW'的 强>
答案 2 :(得分:0)
你不想让循环复杂化吗?它们是基本且有效的流量控制工具,你试图使用eval技巧已经为自己做了多么复杂的事情?
> Eval是邪恶的,避免它。您正试图从服务器评估JavaScript,但您不知道它将做什么。明确你要做的事情,它不仅会使未来的维护变得更加容易,如果其他人继承你的工作,他们也不会想要追捕你并且为了使他们做坏事而做坏事。工作是一场噩梦。