[英]Converting a PHP array into a Javascript one
在网上寻找答案后,我找不到解决问题的方法:我一直得到长度为1的数组。
我的代码如下所示:
<?php
echo "var PlayerPokemon1 = ".$jsPoke1.";\n";
?>
哪个返回
PlayerPokemon1 = [{"Number":"9","0":"9","Name":"Rock Slide","1":"Blastoise","Type1":"Water","2":"Water","Type2":"","3":"","HP":"362","4":"362","Attack":"295","5":"295"}]
这仅仅是一个巨大的目标,我想要实现的目标是
PlayerPokemon1 = [“ 9”,“ 9”,“ Rock Slide”,“ Blastoise”,“ Water”]
等等...
我尝试了这种其他方法
$numArray = count($jsPoke1);
for ($i=0; i<$numArray; i++)
{
echo "PlayerPokemon1[$i] = ".jsPoke1[$i].";\n";
}
但无济于事。
编辑:
print_r ($poke1);
gives this:
Array ( [0] => Array ( [Number] => 9 [0] => 9 [Name] => Rock Slide [1] => Blastoise [Type1] => Water [2] => Water [Type2] => [3] => [HP] => 362 [4] => 362 [Attack] => 295 [5] => 295 [Defense] => 339 [6] => 339 [Speed] => 280 [7] => 280 [Move1] => Aqua Tail [8] => Aqua Tail [Move2] => Ice Beam [9] => Ice Beam [Move3] => Dark Pulse [10] => Dark Pulse [Move4] => Rock Slide [11] => Rock Slide [12] => Aqua Tail [Type] => Rock [13] => Water [Power] => 75 [14] => 90 [15] => Ice Beam [16] => Ice [17] => 90 [18] => Dark Pulse [19] => Dark [20] => 80 [21] => Rock Slide [22] => Rock [23] => 75 ) )
和
$jsPoke1 = json_encode($Poke1);
print_r ($jsPoke1);
[{"Number":"9","0":"9","Name":"Rock Slide","1":"Blastoise","Type1":"Water","2":"Water","Type2":"","3":"","HP":"362","4":"362","Attack":"295","5":"295","Defense":"339","6":"339","Speed":"280","7":"280","Move1":"Aqua Tail","8":"Aqua Tail","Move2":"Ice Beam","9":"Ice Beam","Move3":"Dark Pulse","10":"Dark Pulse","Move4":"Rock Slide","11":"Rock Slide","12":"Aqua Tail","Type":"Rock","13":"Water","Power":"75","14":"90","15":"Ice Beam","16":"Ice","17":"90","18":"Dark Pulse ","19":"Dark","20":"80","21":"Rock Slide","22":"Rock","23":"75"}]
最终,我想要的是一个Javascript数组,其值在数字上像[“ 9”,“ 9”,“ Blastoise”]一样索引
从您的问题来看,天气不清楚,您只需要Blastoise还是PlayerPokemon1
所有口袋妖怪,但我会尝试给出一个可行的答案。 您可以在此处尝试此代码 。
如果您的$jsPoke1
数组看起来像
$jsPoke1 = [
[//Blastoise
'Number' => 9,
0 => 9,
1 => 'Blastoise',
'Name' => 'Rock Slike',
],
[//Totodile
'Number' => 5,
0 => 2,
1 => 'Totodile',
'Name' => 'Water Gun',
]
];
你可以做
$formattedPokemons = array_map(function($pokemon){
return array_values($pokemon);
}, $jsPoke1);
如果要在PlayerPokemon1
所有口袋妖怪,请执行以下操作
echo "var PlayerPokemon1 = ".json_encode($formattedPokemons);
或者这另一件事,如果您只想要Blastoise
echo "var PlayerPokemon1 = ".json_encode($formattedPokemons[0]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.