lamansky/secure-shuffle

使用密码学安全的随机化重新排列数组元素。

1.0.0 2020-08-17 20:28 UTC

This package is not auto-updated.

Last update: 2024-09-25 15:02:21 UTC


README

一个PHP库,用于使用密码学安全的随机化重新排列数组元素。

安装

在您的计算机上安装并初始化了Composer项目后,在项目根目录中运行此命令

composer require lamansky/secure-shuffle

需要PHP 7.1或更高版本。

示例

该库提供了4个可导入的函数。以下是一个使用所有四个函数的示例

<?php
use function Lamansky\SecureShuffle\shuffle;
use function Lamansky\SecureShuffle\shuffle_assoc;
use function Lamansky\SecureShuffle\shuffled;
use function Lamansky\SecureShuffle\shuffled_assoc;

// Shuffles an indexed array in-place.
// Note that we are using the imported shuffle() function,
// not the built-in \shuffle() function.
$arr = [1, 2, 3, 4, 5];
shuffle($arr);
print_r($arr); // Array ( [0] => 4 [1] => 5 [2] => 2 [3] => 1 [4] => 3 )

// Shuffles an associative array in-place.
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
shuffle_assoc($arr);
print_r($arr); // Array ( [b] => 2 [a] => 1 [c] => 3 )

// Creates a shuffled copy of an indexed array.
$orig = [1, 2, 3, 4, 5];
$copy = shuffled($orig);
print_r($orig); // Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
print_r($copy); // Array ( [0] => 5 [1] => 2 [2] => 4 [3] => 3 [4] => 1 )

// Creates a shuffled copy of an associative array.
$orig = ['a' => 1, 'b' => 2, 'c' => 3];
$copy = shuffled_assoc($orig);
print_r($orig); // Array ( [a] => 1 [b] => 2 [c] => 3 )
print_r($copy); // Array ( [c] => 3 [a] => 1 [b] => 2 )