2016-11-08 49 views
2

我想在PHP中創建一個腳本,它在數字之間顯示數字和連字符。它應該是這樣的:如何在PHP中的數字之間插入連字符?

1-2-3-4-5-6-7-8-9-10 

我有以下腳本的權利,但問題是它在數字的末尾顯示一個連字符:

$x = 1; 
$h = 1; 
while($x <= 10) { 
    echo "$x"; 
    $x++; 

    if($h < $x){ 
     echo "-"; 
     $h++;     
    } 
} 

感謝提前:)

回答

9

有更簡單的方法來做好這項工作。使用range()創建包含數組的數組,並使用implode()將字符串連接到目標數組。

echo implode("-", range(1, 10)); 

參見導致demo

+0

這是一個很好的解決方案,假設數字是連續的(他們在問題中) –

+0

@JeremyHarris:使用一個循環,它們必須是連續的,至少要增加一個特定的mber這是'range()'的第三個參數用於;-) – AbraCadaver

+0

呵呵,沒有意識到第三個參數。感謝您指出了這一點! –

1

在數字前面插入hypen,第一個數字除外。

$x = 1; 
while($x <= 10) { 
    if($x > 1) 
     echo '-'; 
    echo $x; 
    $x++;    
} 
0

您可以使用臨時字符串

<?php  

    $x = 1; 
    $str =''; 
    while($x <= 10) { 
     if ($str == '') { 
     $str = $x; 
     } else { 
     $str = $str .'-'.$x; 
     } 
    } 
    echo $str; 
?> 
0

這應該解決的問題(我不知道爲什麼你使用h變量):

<?php  
    $x = 1; 
    $result=""; 
    while($x <= 10) { 
     $result.=$x."-";    
    } 
    echo substr($result, 0,-1); 

?> 

或使用破滅功能

相關問題