In array multidimensional array problemer
Hej eksperter :-)Jeg har problemer med at lave in_array i et multidimensionelt array.
<?php
$harbor = array(
array(344, 102, 1, "København, Danmark"),
array(230, 75, 2, "Nuuk, Grønland"),
array(321, 110, 3, "London, England"),
array(347, 110, 4, "Berlin, Tyskland"),
array(363, 111, 5, "Warszawa, Polen"),
array(355, 90, 6, "Stockholm, Sverige"),
array(343, 88, 7, "Oslo, Norge"),
array(370, 83, 8, "Helsinki, Finland"),
array(328, 121, 9, "Paris, Frankrig"),
array(171, 130, 10, "Ottawa, Canada"),
array(168, 150, 11, "Washington D.C., USA")
);
$getBoats = mysql_query("SELECT `name`,`pos`,`status` FROM `boats` WHERE `ownership` = '1'") or die(mysql_error());
if(mysql_num_rows($getBoats)) {
while($row_boats = mysql_fetch_assoc($getBoats)) {
$myboats[] = array('pos' => $row_boats[pos], 'status' => $row_boats[status], 'name' => $row_boats[name]);
}
}
foreach($harbor as $harborposition) {
list($cor_X, $cor_y, $position, $name) = $harborposition;
if(in_array($position, $myboats)) {
$type = $myboats[status];
$name = $myboats[name];
} else {
$type = 3;
}
print "$position, $type, $name<br />";
}
?>
---------------------------------------------------------
Mit script returnere:
1, 3, København, Danmark
2, 3, Nuuk, Grønland
3, 3, London, England
4, 3, Berlin, Tyskland
5, 3, Warszawa, Polen
6, 3, Stockholm, Sverige
7, 3, Oslo, Norge
8, 3, Helsinki, Finland
9, 3, Paris, Frankrig
10, 3, Ottawa, Canada
11, 3, Washington D.C., USA
og virkede det efter hensigten skulle det have returneret:
1, 2, Seastar
2, 3, Nuuk, Grønland
3, 3, London, England
4, 3, Berlin, Tyskland
5, 1, Maren Louise
6, 3, Stockholm, Sverige
7, 3, Oslo, Norge
8, 3, Helsinki, Finland
9, 3, Paris, Frankrig
10, 3, Ottawa, Canada
11, 3, Washington D.C., USA
