この記事では、配列からいくつかのランダムな要素を取得するための PHP 関数 shuffle() のメソッドを主に紹介し、shuffle 関数の機能、定義、使用法、および関連する注意事項をサンプルの形で詳細に分析します。参考にしてください
場合によっては、配列内の複数のランダムな要素を取得する必要がある場合があります(ランダムな推奨関数を作成するなど)。PHP でそれを実装するにはどうすればよいですか?比較的簡単な解決策は、PHP 独自の shuffle() 関数を使用することです。これは簡単な例です:
$data[] = array( "name" => "脚本之家", "rank" => "40" ); $data[] = array( "name" => "博客园", "rank" => "50" ); $data[] = array( "name" => "CSDN", "rank" => "60" ); $data[] = array( "name" => "ITEYE", "rank" => "50" ); shuffle($data); $i = 0; foreach($data as $key =>$value ){ if($i < 2) { echo $data[$key]['name'].'<br />'; } $i++; }
shuffle()
shuffle() 関数は、配列内の要素をランダムな順序で並べ替えます。成功した場合は TRUE を返し、そうでない場合は FALSE を返します。この関数は、配列内の要素に新しいキーを割り当てます。これにより、元のキーが単に並べ替えられるのではなく、削除されます。
連想配列を渡すと、連想配列のキー名が失われることがわかります。ちなみに、ここで解決策について話しましょう:
// 打乱关联数组的排序 function shuffle_assoc($array) { $randomized_keys = array_rand($array, count($array)); foreach($randomized_keys as $current_key) { $output[$current_key] = $array[$current_key]; } return $output; }
さらに、PHP は配列から値をランダムに抽出する関数も提供します: array_rand()。その呼び出し形式は次のとおりです: array_rand。 (配列、抽出された要素の数); もちろん、2 次元配列をサポートするには、使用する前にカプセル化する必要があります。しかし、以前のプログラムは 2 次元配列を非常によくサポートしています。
要約: 上記がこの記事の全内容です。皆様の学習に役立つことを願っています。
関連する推奨事項:
PHP MVCフレームワークskymvcはマルチファイルアップロード実装方法をサポート
フォームデータの取得とHTML埋め込みPHPスクリプトのPHP実装
以上が配列からいくつかのランダムな要素を取得するための PHP 関数 shuffle() の方法と例の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。