勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPでランダムな値を取得したいケース諸々の対応方法

   2024/04/18  PHP

テストデータを作成する際にランダムな値を入れたかったけど、色々ケースがあったので対応方法をメモ。

 

対応方法

範囲内のランダムな数値を取得

rand(0,10);

0から10の中からランダムな数値を取得できる。

配列からランダムにキーを取得

array_rand($array,1);

$arrayという配列から1つランダムにキーを取得できる。

重複せずにランダムな数値を配列に格納する

$array = range(1,10);
var_dump($array); //array(10) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4]=> int(5) [5]=> int(6) [6]=> int(7) [7]=> int(8) [8]=> int(9) [9]=> int(10) }
shuffle($array);
var_dump($array); //array(10) { [0]=> int(1) [1]=> int(3) [2]=> int(5) [3]=> int(6) [4]=> int(8) [5]=> int(2) [6]=> int(10) [7]=> int(4) [8]=> int(9) [9]=> int(7) }

 

リファレンス

rand

https://www.php.net/manual/ja/function.rand.php

array_rand

https://www.php.net/manual/ja/function.array-rand.php

range

https://www.php.net/manual/ja/function.range.php

shuffle

https://www.php.net/manual/ja/function.shuffle.php

 - PHP

  関連記事

PHPMailerでエラーメッセージを日本語で出力する方法

PHPMailerのGitHubページを見ていると言語設定についての案内を見つけ ...

PHPのバリエーションライブラリ「Valitron」の導入及び利用方法

フォーム等の入力内容チェックをPHP側で行う際、現状は素のPHPで書いているけど ...

$_SERVER['PHP_SELF']に脆弱性あり

formのaction属性とかページングのリンクとかで、 <form ac ...

複数(PHP / metaタグ / htaccess)の方法で301リダイレクト

サイトのディレクトリやファイル名を大幅に変えるという案件があった。それ自体は問題 ...

Codeigniter3で異なるデータベースを使用する

Codeigniterで2つのコンテンツがあって、それぞれ別のデータベースを使用 ...