勉強したことのメモ

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

  関連記事

PHPにて西暦から干支(十二支)を計算し表示する方法
PHPにて西暦から干支(十二支)を計算し表示する方法

先日MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表 ...

PHPで多次元連想配列のキーを指定してソートする方法
PHPで多次元連想配列のキーを指定してソートする方法

PHPで多次元配列から指定したキーでソート(並べ替え)したい。以下に対応方法をメ ...

PHP8系で「Uncaught TypeError: count(): Argument」エラーの対応方法
PHP8系で「Uncaught TypeError: count(): Argument」エラーの対応方法

PHP8系で「PHP Fatal error: Uncaught TypeErr ...

PHPのログイン認証をPEAR::Authパッケージで実装する方法
PHPのログイン認証をPEAR::Authパッケージで実装する方法

PHPのシステムである程度ちゃんとしたログインシステムが必要になった。今までログ ...

CodeIgniter4&Bootstrap&jQueryで簡易版お問い合わせページの作成
CodeIgniter4&Bootstrap&jQueryで簡易版お問い合わせページの作成

CodeIgniter4.4.4&Bootstrap&jQuer ...