2016-11-08 168 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); 

?> 

或使用破灭功能

相关问题