PHPで任意の文字列を乱数化して出力するのだ!

web

皆さんこんばんわ!バジラですぅ!

前回はですね、CSSによるブラー処理をご紹介しました。画像サイズがちいちゃいんだけども先方のお気に入りでどうしても使わなきゃいけないときとか、ホバーアクションとかなんかにも使えますよね!って話をした記憶があります!

んで、今回はですね、乱数です!英数字記号の乱数を生成しようと。

パスワードの自動生成ツールなんかはこの仕組み使ってるんじゃないっすかね!

僕は以前案件でzipのダウンロードパス生成使った記憶があります!ダウンロードファイル名とかにするのもいいかもしれませんね!

カスタムの仕方次第では数限りなくいけそうな気もしますし、使いところは少ないかもしれませんが、知っておくと意外と結構便利!

せっかくなので覚えておきましょう!では早速コード!

はいコードだ!

<?php
$str = "1234567890abcdefghijklmnopqrstuvwxyz?!-_&$#"; //①ベースの文字列を$strで設定
$randoms = substr(str_shuffle($str), 0, 10); //②$str_shuffle()+substr()でランダム文字列作成

echo $randoms; //③えこー
?>
結果はこんな感じ!
gn6wk9m_ui

リロードすると数字変わりますよね!これでいいんだ!これがいいんだ!

ズバッと解説!

つか解説も何もない感じではありますが、変数$strにベースの文字列を代入して、それをシャッフル→substr()でモロモロ指定して、変数$randomsに代入、エコーって流れですねー!

echoまでの流れ
  • 変数$strにベースの文字列を代入
  • $str_shuffle()で$strの文字列をシャッフルし、substr()で文字を抜き出す。(引数は左から対象文字列,開始位置,文字数)
  • エコーで出力

rand()ってのもありますが、あれは数字だけ!文字まで入れ込むならこれが便利かなーと思います!いつ使うんだって話ではありますが、

最後に

うーん!どうやって使うのか。いつ使うのかはかなり限定的ではあります。が、乱数自体がそもそも使用頻度が多くなりにくいものでもありますし、あくまで知識程度にしておいてもいいかもしれません。

がっちり覚えないで、そういえばどっかに落ちてたな。くらいでいいんもんだと思います!その時にはこのページに戻ってきてくれればうれしい限りですわ!

現場からは以上です。

今日使用した関数はこちら!

php
  • substr(対象文字列, 開始位置, 文字数)
  • $str_shuffle(対象文字列)

タイトルとURLをコピーしました