2010年01月29日 過去Blog
使用例 //パスワード生成クラス読み込み require_once ‘My/Password.php’; //デフォルトは8桁のパスワードが生成されます $password = My_Password::getPassword(); var_dump($password); //『32桁、小文字英字のみ』のパスワード生成 $password = My_Password::getPassword(32, ‘small’); var_dump($password);
出力結果は以下のようになります。 string(8) “txRC4hLX” string(32) “zcyhuypsvbjgrfiacxrfhwusuiuulllb” 説明 int $lenght パスワードの桁数 (デフォルト 8桁 ) string $mode 文字列の種類を指定 (デフォルト 大小文字英数字 ) small – 小文字英字 large – 大文字英字 smallalnum – 小文字英数字 largealnum – 大文字英数字 num – 数字 alphabet 大小文字英字 alnum – 大小文字英数字 パスワード生成クラスMy_Passwordソース class My_password { /** * ファイル名・ユニークID・パスワード生成 * * @param integer $length 文字列長 default:8 (1-256) * @param string $mode モード default:’alnum’ * @return array */ public static function getPassword($length = 8, $mode = ‘alnum’) { if ($length < 1 || $length > 256) { return false; } $smallAlphabet = ‘abcdefghijklmnopqrstuvwxyz’; $largeAlphabet = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’; $numeric = ‘0123456789’; switch ($mode) { // 小文字英字 case ‘small’: $chars = $smallAlphabet; break; // 大文字英字 case ‘large’: $chars = $largeAlphabet; break; // 小文字英数字 case ‘smallalnum’: $chars = $smallAlphabet . $numeric; break; // 大文字英数字 case ‘largealnum’: $chars = $largeAlphabet . $numeric; break; // 数字 case ‘num’: $chars = $numeric; break; // 大小文字英字 case ‘alphabet’: $chars = $smallAlphabet . $largeAlphabet; break; // 大小文字英数字 case ‘alnum’: default: $chars = $smallAlphabet . $largeAlphabet . $numeric; break; } $charsLength = strlen($chars); $password = ”; for ($i = 0; $i < $length; $i++) { $num = mt_rand(0, $charsLength - 1); $password .= $chars{$num}; } return $password; } } また、PEARにも類似のライブラリがありますのでこちらもご参考下さい。 http://pear.php.net/package/Text_Password 参照元:http://www.plusmb.jp/2009/02/06/2439.html

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

[7]:SQLiteを使ってToDoリストアプリを作成(2)

2010年12月03日 過去Blog
このチュートリアルは、タイトルの通り、SQLiteを使ってToDoリストアプリを作成の二回目の記事です。前回の記事を読んでない方は、そちらから読んでください。 今回は、SQLデータをUITableViewで表示するだけでなく、画像や文字列を使った複合的なカラムの作成を行います。今回のチュートリアルでは、以下の画像を使いますので、ダウンロードしてください。 優先度:高 優先度:普通 優先度:低 これらの画像は、優先度を表示するのに使います。 …
「[7]:SQLiteを使ってToDoリストアプリを作成(2)」をはてなブックマークに追加

PHP POSTデータの受信 extract($_POST);

2011年07月07日 過去Blog
POSTで送信された複数のデータを取得する際に便利です。 $_POST['key'] のようにkey部分を手動で指定しなくても、利用可能になります。 extract($_POST); これ便利! (/_・)/
「PHP POSTデータの受信 extract($_POST);」をはてなブックマークに追加

zencart:カスタマイズ リンクの貼り方

2009年11月18日 過去Blog
セッションや共用SSLの問題を考えずに、普通にリンクを貼るのであれば、Zencartのデフォルトで設定されているURL(http://domain_name.com/index.php?main_page=contact_us など)をそのままテンプレート内に張り付けることで動作しますが、この方法でリンクを貼るとクッキーの使えないブラウザで正常にセッションが動作しなくなります。Zencartのセッションについてはこちらの記事で触れています。 セッションを維持するリンクの貼り方は状況によっていくつか考えられるので、順に説明していきたいと思います。 …
「zencart:カスタマイズ リンクの貼り方」をはてなブックマークに追加

データベースから重複データを削除して表示する

2010年03月25日 過去Blog
重複行を除いて表示したい場合は、select distinctを使用する SELECT DISTINCT [, 列名2 ...] FROM [WHERE条件式など] ※※ は必須、[]はオプション
「データベースから重複データを削除して表示する」をはてなブックマークに追加

WordPressでログイン中のユーザーIDを取得

2011年05月16日 過去Blog
Wordpressでログイン中のユーザーIDを取得 global $userdata; get_currentuserinfo(); echo $userdata->ID; migraine remedies…
「WordPressでログイン中のユーザーIDを取得」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy