0)" を渡します{$s = inc($s);}" 最後の文字を除いた文字列を計算してキャリーします。"/> 0)" を渡します{$s = inc($s);}" 最後の文字を除いた文字列を計算してキャリーします。">
php 文字列を 1 ずつ増やす方法: 1. 新しい php サンプル ファイルを作成します; 2. "function inc($s) {...}" メソッドを作成します; 3. "while ($n)" を渡します-- > 0) {$s = inc($s);}" 最後の文字を除いた文字列を計算して桁上げします。
このチュートリアルの動作環境: Windows 10 システム、PHP バージョン 8.1、DELL G3 コンピューター
php の拡張方法文字列を 1 ずつ?
php 数値文字列 1 の演算が累積して 1 つ追加されます (オーバーフローなし)
* inc.php
<?php function inc($s) { if (empty($s)) {return "1";} if ( ! isset($s[1]) ) { $code = ord($s[0]) + 1; if ($code <= ord("9")) { return chr($code); } return "10"; } $n = strlen($s); $code = ord($s[$n-1]) +1; if ($code <= ord("9")) { return substr($s, 0, $n-1).chr($code); } return inc(substr($s, 0, $n-1))."0"; } $s = "2147483647"; $n = 10000; while ($n-- > 0) { // printf("%s\n", $s); $s = inc($s); } printf("%s\n", $s); // "2147493647"
再帰 (キャリーが指定されている場合)必要な場合は、最初に最後の文字を除いた文字列を計算し、最後の文字を「0」に設定します。単一の数字 0 ~ 9 は明らかに扱いやすいです。
#* test:<?php $m = 2147483647; $n = 10000; while ($n-- > 0) { // printf("%d\n", $m); $m++; } printf("%d\n", $m);比較結果は一貫しています* add2.php // 1 ~ 4 個の大文字をトラバースします
<?php function add($s) { if (empty($s)) {return "A";} if ( ! isset($s[1]) ) { $code = ord($s[0]) + 1; if ($code <= ord("Z")) { return chr($code); } return "AA"; } $n = strlen($s); $code = ord($s[$n-1]) +1; if ($code <= ord("Z")) { return substr($s, 0, $n-1).chr($code); } return add(substr($s, 0, $n-1))."A"; } $s = ""; do { $s = add($s); printf("%s\n", $s); } while ($s != "ZZZZ");推奨される学習: 「
PHP ビデオ チュートリアル 」
以上がPHPの文字列を1つ増やす方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。