PHPでパスワードを生成

(1/4)
これから、短くても実用的なプログラムの作り方を通じて、PHP プログラミングの初歩を紹介していく。
まず最初に、パスワードを生成するプログラムをつくってみることにする。

サンプル・プログラム

まずは PHP のソースプログラムをダウンロードしてほしい。
解凍できたら、password.php というファイル名で Apache の仮想ディレクトリが通っているディレクトリにセーブすること。
なお、画面に表示している行番号は説明の便宜上のものであり、ソースプログラムには含まれていない。

0001: <?php
0002: /**
0003:  * パスワードを生成する
0004:  * @copyright (c)studio pahoo
0005:  * @author     パパぱふぅ
0006:  * @version     1.0  2004/09/26
0007: */
0008: /**
0009:  * マイクロ秒により乱数器に種まき
0010: */
0011: function make_seed() {
0012:     list($usec$sec) = explode(' ', microtime());
0013:     mt_srand((float) $sec + ((float) $usec * 100000));
0014: }
0015: 
0016: /**
0017:  * パスワードを生成する
0018:  * @param int        $len パスワードの長さ
0019:  * @param string    $str パスワードに使う文字の並び
0020:  * @return string    パスワード
0021: */
0022: function make_password($len$str) {
0023:     $l = strlen($str) - 1;
0024: 
0025:     $psw = "";
0026:     for ($i = 0; $i < $len$i++) {
0027:         $n = (int)mt_rand(0, $l);
0028:         $psw = $psw . substr($str$n1);            //1文字追加
0029:     }
0030:     return $psw;
0031: }
0032: 
0033: //メインプログラム ========================================================
0034: print make_password(10, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ");
0035: ?>

プログラムを実行する

プログラムをダウンロードする

サンプル・プログラムの実行方法

ブラウザから http://localhost/***/password.php (*** はセーブした仮想ディレクトリ名)と入力すると、数字+英大文字から成る 10 桁のパスワードが表示される。
これが PHP プログラムである。
この項つづく
header