2015-06-19 37 views
0

我有一個sql查詢返回一個地方的高度。我已經分解了經度和緯度的結果。結果存儲在數組中。在數組中創建動態數組php

現在我想創建一個數組,它應該包含爆炸函數返回的所有數組。

$sql_altitude = mysql_query("SELECT altitude FROM `navigatio_info` 
              WHERE bus_id='$bus_id' 
              AND driver_id ='$driver_id' 
              ORDER BY stop_no ASC 
              LIMIT 0 , 30"); 
while ($row = mysql_fetch_assoc($sql_altitude)) 
{ 
    //echo $row['altitude']; 
    //$altitude=array(); 
    $altitude=(explode("-",$row['altitude'])); 
    print_r($altitude); 
    //$lat=array(); 
    $lat=$altitude[0]; 
    //print_r($lat); 
    echo '<br/>'; 
    //$long=array(); 
    $long=$altitude[1]; 
    //print_r($long); 
    //echo '<br/>'; 
} 
下面

是定義一個靜態數組:

<?php 
    $phpArray = array(array('Vadodara',22.3000,73.2000,5), 
        array('Valsad',20.6300,72.9300,2), 
        array('Thane',19.1724,72.9570,1)); 
)?> 

我想$ phpArray具有高於

+0

將'$ lat'和'$ long'聲明爲'array []'你將實現你的目標:) –

+0

我無法將lat long傳遞給$ phpArray來創建動態數組 –

+0

如果你做了什麼while循環後的'print_r($ lat)'? –

回答

0
$sql_altitude = mysql_query("SELECT altitude FROM `navigatio_info` WHERE bus_id='$bus_id'AND driver_id ='$driver_id' ORDER BY stop_no ASC LIMIT 0 , 30"); 
$phparray = array(); 
while ($row = mysql_fetch_assoc($sql_altitude)) 
{ 
$altitude=(explode("-",$row['altitude'])); 
$lat=$altitude[0]; 
$long=$altitude[1]; 
$phparray = array($lat,$lat); 
} 
echo "<pre>"; 
print_r($phparray) 
echo "<pre>"; 

從查詢生成的動態值請檢查上面的代碼:

1

請使用mysqli_*功能,因爲mysql_*功能是舊的W上。

$phpArray = array(); 
while ($row = mysql_fetch_assoc($sql_altitude)) 
{ 
    /* 
     I assume $row['altitude'] contains something like below string 
     $row['altitude'] = "place-latitude-longitute-altitude" 
    */ 
    $phpArray[] = explode("-",$row['altitude']); 
} 

print_r($phpArray); 
+1

這真的是很好的答案和+1關於'mysqli_ *'折舊的警告 –

+0

謝謝bhai .... –

0

據我瞭解您的要求使用下面的代碼。

$phpArray = array(); 
while ($row = mysql_fetch_assoc($sql_altitude)) { 
     $altitude=(explode("-",$row['altitude'])); 
     $phpArray[]= $altitude; 
} 

print"<pre>"; 
print_r($phpArray); 
print"</pre>"; 

上面的代碼會生成下面的數組。

Array 
(
[0] => Array 
    (
     [0] => Vadodara 
     [1] => 22.3000 
     [2] => 73.2000 
     [3] => 5 
    ) 

[1] => Array 
    (
     [0] => Valsad 
     [1] => 20.6300 
     [2] => 72.9300 
     [3] => 2 
    ) 

[2] => Array 
    (
     [0] => Thane 
     [1] => 19.1724 
     [2] => 72.9570 
     [3] => 1 
    ) 

) 

希望這會有所幫助。