勉強したことのメモ

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

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

   2024/04/18  PHP

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

 

対応方法

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
rand(0,10);
rand(0,10);
rand(0,10);

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

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
array_rand($array,1);
array_rand($array,1);
array_rand($array,1);

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

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$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) }
$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) }
$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で調べて表示

やりたい事はsampleというディレクトリがあったとして、その直下にあるフォルダ ...

フォームからアップロードした画像にPHPでロゴ画像(透かし)を追加する方法

フォームから送られてきた画像に対してサイトロゴみたいなロゴ画像を右下等、指定の位 ...

eval関数について

ちょくちょく見ることがあったeval関数について、 なんとなく分かってきたのでメ ...

日付の比較で○日前というのを調べる

PHP及びjavascriptで日付の比較をしたく、締切日とかではなく ○日前と ...

S