2024 年 PHP Conference Japan

str_increment

(PHP 8 >= 8.3.0)

str_increment遞增字母數字字串

描述

str_increment(字串 $string): 字串

返回遞增的字母數字 ASCII 字串

參數

string

輸入字串。

回傳值

返回遞增的字母數字 ASCII 字串。

錯誤/例外

如果 string 為空,則會拋出 ValueError

如果 string 不是字母數字 ASCII 字串,則會拋出 ValueError

範例

範例 #1 基本 str_increment() 範例

<?php
$str
= 'ABC';
var_dump(str_increment($str));
?>

以上範例會輸出:

string(3) "ABD"

範例 #2:str_increment() 發生進位的範例

<?php
$str
= 'DZ';
var_dump(str_increment($str));

$str = 'ZZ';
var_dump(str_increment($str));
?>

以上範例會輸出:

string(2) "EA"
string(3) "AAA"

參見

新增註記

使用者貢獻的註記 1 則註記

yarns_purport0n at icloud dot com
1 個月前
字串會逐字元遞增,每個字元位置可以是以下 3 種模式之一:
1. [A-Z] 大寫
2. [a-z] 小寫
3. [0-9] 十進位

您可以混合使用任何模式組合,而且(至少在像英文這樣的從左到右的語言中)它總是從右到左遞增,並向左溢位。
溢位的字元模式/類型保持第一個(索引 0)位置的模式/類型。
因此:輸入 'zZ9',會回傳 'aaA0'
因此:輸入 'Z9z',會回傳 'AA0a'
因此:輸入 '9zZ',會回傳 '10aA'

範例
<?php
$str
= 'zZ9'; // 以小寫溢位
echo $str = str_increment($str).PHP_EOL; // aaA0
$str = 'Z9z'; // 以大寫溢位
echo $str = str_increment($str).PHP_EOL; // AA0a
$str = '9zZ'; // 以十進位溢位
echo ($str = str_increment($str)); // 10aA
?>
To Top