【问题标题】:Alphabetical counter字母计数器
【发布时间】:2021-12-19 12:38:12
【问题描述】:

PHP 专业人士您好,

与:

$count = 0; // start count

$count = $count +1; // addition value

我可以为每个文本段落定义一个自动计数器。 在每个段落中,值将自动递增:

第一段:echo $count++;。 (结果为 1。)文本

第二段:echo $count++;。 (结果为 2。)文本

第三段:echo $count++;。 (结果为 3。)文本

第 4 段:echo $count++;。 (结果为 4。)文本

等等。 这可以正常工作。

问题:

如何实现不输出数字 1 到 x,而是按字母顺序从 A 到 Z?

【问题讨论】:

    标签: php counter alphabetical


    【解决方案1】:

    尝试以下方法:

    $字母 = chr($count + 65);

    如果您有超过 26 个段落,请使用模数

    【讨论】:

      【解决方案2】:

      您可以不以0 开头,而是以'A'"A" 开头。 increment operator in PHP 也适用于字母:

      PHP 在处理字符变量而不是 C 的算术运算时遵循 Perl 的约定。例如,在 PHP 和 Perl 中 $a = 'Z'; $a++;将 $a 变成 'AA',而在 C a = 'Z';一个++;将 a 转换为 '['('Z' 的 ASCII 值是 90,'[' 的 ASCII 值是 91)。请注意,字符变量可以递增但不能递减,即使如此,也仅支持纯 ASCII 字母和数字(a-z、A-Z 和 0-9)。其他字符变量自增/自减无效,原字符串不变。

      在您的情况下,您只需像往常一样编写 $count = 'A'; 并使用 echo $count++;

      【讨论】:

        【解决方案3】:

        chr() 函数将传入的整数转换为相应的 ACSII 字符。

        所以你可以这样做:

        $count = 1;
        
        echo chr(65 + $count++); // 'A' == 65
        echo chr(65 + $count++);
        echo chr(65 + $count++);
        

        【讨论】:

          【解决方案4】:

          它工作正常,它适用于小写字母:

          echo chr(97 + $count++); // 'a' == 97
          

          感谢您的帮助。

          【讨论】:

          • 对不起,这必须是主题的和。
          【解决方案5】:

          感谢简化的解决方案,包括解释。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2015-04-09
            • 1970-01-01
            • 1970-01-01
            • 2021-10-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-02-07
            相关资源
            最近更新 更多