PHPでアクセスIPからランダム英数字のIDを作成
2024/02/25
PHPで掲示板などにあるようなアクセスIPからランダム英数字のIDを作成したかった。以下にほしい機能とソースをメモ。
ほしい機能
- IPアドレスもしくは会員IDなどからランダムIDを作成
- 日付によってランダムIDを変えたり変えなかったりする
- ランダムIDの桁数も決めたい
ソースコード
//---------------------------------------- // $limit(int) ランダムIDの桁数。デフォルトは10桁。 // $daily(bool) 日付によってIDを変えるかどうか。デフォルトは変えない。 // $free(text) 閲覧者のIPやユーザーID等、自由入力。空の場合は閲覧者のIPを使用。 //---------------------------------------- function createId( $limit = 10, $daily = false, $free = '' ) { $daily_md5 = ( $daily ) ? md5(date('Y-m-d')): ''; $free_md5 = ( $free ) ? md5( $free ) : md5( $_SERVER['REMOTE_ADDR'] ); $id = substr(base64_encode($daily_md5 . $free_md5), 0, $limit); return $id; }
関連記事
-
-
ソシャゲのガチャのように当選確率が異なる抽選システムをPHPで作成する方法
ソシャゲのガチャみたいな当選確率が異なる抽選システムをPHPで作成したかった。具 ...
-
-
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...
-
-
mp3ファイルのアップロードと再生方法
mp3ファイルをformでアップロードしたかったのと、Webサイト上で再生したか ...
-
-
DTIのVPS(PHP5系環境)にCakePHPを導入する方法
他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...
-
-
PHP8系で「Warning: Attempt to read property "xxxxxx" 」エラーの対応方法
PHP8系&WordPress6.4.3で「Warning: Attem ...