如何在字符串中添加<br/>用substr()

时间:2017-10-28 05:51:51

标签: php html substring substr strlen

以下代码:

<?php
$word = 'SEKISUI';

// echo substr($word,0,-6)."<br>";
$length = (strlen($word)+1)-14;
$urut = 0;
  for($i=$length;$i<1;$i++){
    echo substr($word,$urut,$i).'<br>';
//    echo $urut."-".$i."-".'<br>'; // Check Value
    $urut++;
  }

?>

结果:

S
E
K
I
S
U

为什么字母“i”没有出现?
我的代码有什么问题?
结果应如下所示:

S
E
K
I
S
U
I

感谢您的关注......

2 个答案:

答案 0 :(得分:1)

我不知道你是否需要使用'for循环',但有一种更好的方法将字符串拆分成单个字符。

一旦你有阵列就可以对它进行任何操作,也可以用“\&lt; br&gt;”连接()数组中的项目。分离器。

尝试以下方法:

$word = 'SEKISUI';
$result = str_split($word);
$altogether = join("<br>",$result);

答案 1 :(得分:0)

不确定为什么你喜欢减去长度而不是尽可能多地处理正数。

substr(string,start,length)的语法中,

  

可选。指定返回字符串的长度。默认是   字符串的结尾。正数 - 要返回的长度   from start参数负数 - 要返回的长度   从字符串的末尾

所以基本上你的结尾字符指针是nevel count。 如果您运行echo substr($word,0,-1)."<br>";,则不会获得结束字符,因为它是否为负substr的起点。 但是,将substr长度更改为1会产生有效的字符串not nullempty string

$word = 'SEKISUI';

// echo substr($word,0,-6)."<br>";
$length = (strlen($word)+1)-14;
$urut = 0;
  for($i=$length;$i<1;$i++){
    echo substr($word,$urut,1).'<br>';
//    echo $urut."-".$i."-".'<br>'; // Check Value
    $urut++;
  }

但是,我更喜欢这种方法,因为这更简单。

$word = 'SEKISUI';

//echo substr($word,1,1)."<br>";
$length = strlen($word);
$urut = 0;
for($i = $urut; $i <= $length; $i++){
  echo substr($word,$i,1).'<br>';
}