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でサイトマップを動的に生成する方法
WordPress等のCMSは使っておらず、自動更新するサイトがあり、そのサイト ...
-
-
PHPにて文字のあいまい検索(文字のゆれ)を実装する方法
Googleで検索する際に、ちょっと間違えて入力してしまっても「もしかして○○? ...
-
-
数値を3桁とかでカンマ区切りにする
見たこと無い関数が業務中にあったのでメモ。 number_format ■参考サ ...
-
-
PHPでファイルをダウンロードさせる
集計ページみたいなんがあった。その集計ページを CSV化したいと言われた。 ■ソ ...