代码之家  ›  专栏  ›  技术社区  ›  Crazy

如何将字母表中的字母每次增加2个或更多,而不是1个?

  •  1
  • Crazy  · 技术社区  · 7 年前

    我想每次增加一个字母2,例如。

    // increment by 1
    $alphabet = "A";
    $alphabet++; // 'B'
    

    我想要像这样的东西

    // increment by 2
    $alphabet = "A";
    $alphabet+=2; // 'C'
    

    我该怎么做?我尝试了上面的代码,但遇到了非数字值。

    2 回复  |  直到 7 年前
        1
  •  2
  •   Andreas    7 年前

    您可以使用由range创建的字母表创建一个数组。

    $alphabet = range("A", "Z");
    $i =0;
    
    Echo $alphabet[$i];
    $i =($i+25)%26;
    Echo $alphabet[$i];
    

    https://3v4l.org/U49OY

    编辑马克在上面的评论中有一个很好的观点。
    添加了一个mod计算,将其保持在a-Z之间。

    代码中是($i)+ 25 )%26; 这是增量值。

        2
  •  1
  •   Niklesh Raut    7 年前

    使用php chr 和php ord

    $alphabet = "A";
    $ascii = ord($alphabet);
    $ascii += 2;
    echo $alphabet = chr($ascii);
    

    现场演示: https://eval.in/907132