如何在PHP中的数字之间插入连字符?

时间:2016-11-08 16:00:35

标签: php string loops numbers

我想在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++;                
    }
}

提前致谢:)

4 个答案:

答案 0 :(得分:9)

有更简单的方法来完成这项工作。使用range()创建包含数字的数组,并使用implode()将目标数组与字符串连接。

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

请参阅demo

中的结果

答案 1 :(得分:1)

在号码前插入hypen,第一个号码除外。

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

答案 2 :(得分:0)

您可以使用临时字符串

<?php    

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

答案 3 :(得分:0)

这应解决问题(我不知道你为什么使用h变量):

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

?>

或使用内爆函数