2010-12-03 6 views
0

Hier einige PHP-Code:Zugriff mehrdimensionales Array in JS erstellt von PHP json_encode

$map[1][3]['test'][0]='weee'; 
$map[4][5]['test'][0]='bleh'; 
$map[1][3]['bleh'][0]='mooo'; 
$map[1][3]['bleh'][1]='baaa'; 
echo "map = " . json_encode($map) . ";"; 

Wie greife ich auf diese Elemente in Javascipt?

Ich habe versucht, alle Arten:

map[1][3]['bleh'][1] 
map[1][3].bleh[1] 
map.1.3.bleh[1] 

aber nichts scheint zu funktionieren :(

Dank

+1

! 'map [1] [3] ['bleh'] [1]' funktioniert gut für mich. Scope-Probleme? – deceze

Antwort

1

Works für mich, außer für den letzten

 
<html> 
<body> 
<script type="text/javascript"> 
<?php 

$map[1][3]['test'][0]='weee'; 
$map[4][5]['test'][0]='bleh'; 
$map[1][3]['bleh'][0]='mooo'; 
$map[1][3]['bleh'][1]='baaa'; 

print "map = ".json_encode($map).";\n"; 
?> 

alert(map[1][3]['bleh'][1]); 
alert(map[1][3].bleh[1]); 

</script> 
</body> 
</html> 
+0

Hmm ja, mein Beispiel funktioniert, ich hätte h überprüfen sollen Aha! Sorry ... wird weiter nachforschen – bob

+0

Es stellte sich heraus, dass das Problem durch das Fehlen von Casting beim Erstellen des ursprünglichen Arrays mit simplexml verursacht wurde! Was für Kopfschmerzen, haha – bob