2014-11-04 47 views
-1

我不知道如何從列中提取值(在MySQL中),並使用PHP將其削減爲 。對於爲例,如果我有這樣的表:使用PHP切斷MySQL值

--------------------- 
| id | numbers  | 
--------------------- 
| 1 | 25-62-122-0 | 
| 2 | 1245-56  | 
| 3 | 45-4658  | 
--------------------- 

,我想切割數的第一個值(ID = 1)[25-62-122-0],並顯示它,使用PHP,像這樣:

25 
62 
122 
0 

(前每號 ' - ' 每行)

+0

'爆炸( 「 - 」,$行[」數字'])'或者如果你想只顯示它自己的行上的每個數字,用br替換短劃線。 'str_replace(「 - 」,「
」,$ row ['numbers'])' – 2014-11-04 23:06:22

回答

0

可以使用爆炸功能在PHP

$string = "25-62-122-0"; 
$array = explode('-',$string); 

foreach($array as $value) { 

echo($value); 

} 
0

這是一個非常詳細的步驟一步來實現這一點(可能是有點過於詳細,但會告訴你的方法):

$sql = new mysqli ('HOST','DB_USER','DB_PASS','DB'); 
$query = "SELECT numbers FROM table"; 
if ($result = $sql->query($query)) 
{ 
    while ($row = $result -> fetch_assoc()) 
{ 
     $number[] = $row['numbers']; 
} 
} 
    // do a var_dump($number); here to see the actual output 

    foreach ($number as $a) 
{ 
     $numbers[] = explode('-',$a); 
} 
    // do a var_dump($numbers); here to see the actual output 

    foreach ($numbers as $b) 
{ 
     echo $b; 
} 

爲了您的下一個問題:

$sql = new mysqli ('HOST','DB_USER','DB_PASS','DB'); 
    $query = "SELECT numbers FROM table"; 
    if ($result = $sql->query($query)) 
    { 
     while ($row = $result -> fetch_assoc()) 
    { 
      $number[] = $row['numbers']; 
    } 
    } 
    foreach ($number as $a) 
    { 
     echo str_replace('-',' ',$a)."<br>"; 
    }