使用PHP如何打印字符串反向

时间:2016-02-06 08:27:52

标签: php

我想要反转打印字符串。我找到了这段代码,但是我无法理解for循环后立即两行的含义。

<?php 
    $s = 'abcdefg';
    $j = 0;

    for ($i = strlen($s) - 1; $i >= 0; $i--) {
       $s .= $s[$i];
       $s[$i] = NULL;
       $j++;
    }
    echo "$s";
    echo "<br/>";
    echo "there are " . $j . " character in the string.";
?>

3 个答案:

答案 0 :(得分:6)

只需使用strrev

即可
<?php
echo strrev("abcdefg");

答案 1 :(得分:0)

$s .= $s[$i];

该行将生成反向字符串并将其与变量$s连接。由于您要连接此变量$s(已经有一些值abcdefg,因此您需要从代码中删除变量中的每个字符,这些字符由代码中的以下行完成:

$s[$i] = NULL;

您可以通过删除此行并检查输出来检查此项。它将输出:

  

abcdefggfedcba

更简单的替代方法是使用strrev()函数

答案 2 :(得分:-1)

按照此代码

<?php 
    error_reporting(0);

    $s = 'abcdefg';
    $length = strlen($s);
    $k=array();
    for ($i = $length; $i>=0; $i--) {
       $k .= $s[$i];
       $k[$i] = NULL;

     }
    echo "$s";
    echo "<br/>";
    echo "there are <b>".$k."</b> character in the string.";
?>