我无法创建一个从php数组中出现的javascript数组。这就是我尝试的方式。
我的PHP数组名为$ samlet。
这是我的输出:
Array ( [0] => Array ( [m_field_id_8] => ) [1] => Array ( [m_field_id_8] => ) [2] => Array ( [m_field_id_8] => 10102a ) [3] => Array ( [m_field_id_8] => 10180a ) [4] => Array ( [m_field_id_8] => 10210a ) [5] => Array ( [m_field_id_8] => 10212a ) [6] => Array ( [m_field_id_8] => 10242a ) [7] => Array ( [m_field_id_8] => 10248a ) [8] => Array ( [m_field_id_8] => 10258a )
我希望它转换为javascript数组。
但在我这样做之前,我尝试使用模拟javascript数组,这很有效。
<script>
var availableTags = [
"Test1",
"Test2",
"Test3",
"Test4",
"Test5",
];
现在我想用我的php数组代替。这是我试过的方式。但这不起作用。为什么这很开心?
<?php
foreach($samlet as $category => $value)
{
?>
var availableTags = [<?php echo $value['m_field_id_8']; ?>]
<?php
}
?>
</script>
答案 0 :(得分:3)
您可以使用json_encode创建JSON数组
echo 'var availableTags = ' . json_encode(array_map(function($value) {
return $value['m_field_id_8'];
}, $samlet));
答案 1 :(得分:2)
应为foreach($samletas as $category => $value)
和
var availableTags = [];
availableTags.push(<?php echo $value['m_field_id_8']; ?>);
如果$value['m_field_id_8']
字符串,请输入以下内容:
availableTags.push("<?php echo $value['m_field_id_8']; ?>");
答案 2 :(得分:1)
在循环之外声明数组
var availableTags = [];
然后在你的迭代中:
availableTags.push(<?php echo $value['m_field_id_8']; ?>);
在as
foreach
foreach($samletas as $category => value);