str_increment
(PHP 8 >= 8.3.0)
str_increment — Increment an alphanumeric string
参数
string
-
The input string.
返回值
Returns the incremented alphanumeric ASCII string.
错误/异常
A ValueError is thrown if
string
is empty.
A ValueError is thrown if
string
is not an alphanumeric
ASCII string.
示例
示例 #1 Basic str_increment() example
<?php
$str = 'ABC';
var_dump(str_increment($str));
?>
以上示例会输出:
string(3) "ABD"
示例 #2 str_increment() example with a carry
<?php
$str = 'DZ';
var_dump(str_increment($str));
$str = 'ZZ';
var_dump(str_increment($str));
?>
以上示例会输出:
string(2) "EA" string(3) "AAA"
+添加备注
用户贡献的备注 1 note
yarns_purport0n at icloud dot com ¶
4 months ago
The strings are incremented per character and each character position can be one of 3 modes:
1. [A-Z] uppercase
2. [a-z] lowercase
3. [0-9] decimal
you can mix any combination of the modes and (at least in right to left languages like english) it always increments from the right overflowing leftwards
the mode/type of character that overflows remains the mode/type of the first (0 index) position.
so: input 'zZ9' & 'aaA0' is returned
so: input 'Z9z' & 'AA0a' is returned
so: input '9zZ' & '10aA' is returned
Example:
<?php
$str = 'zZ9'; // overflows in lowercase
echo $str = str_increment($str).PHP_EOL; // aaA0
$str = 'Z9z'; // overflows in uppercase
echo $str = str_increment($str).PHP_EOL; // AA0a
$str = '9zZ'; // overflows in decimal
echo ($str = str_increment($str)); // 10aA
?>
备份地址:http://www.lvesu.com/blog/php/function.str-increment.php