public static PhpValue array_rand(PhpArray array, int count = 1)
{
if (count == 1)
{
var result = new List<PhpValue>(1);
return RandomSubset(array.Keys, result, count, PhpMath.Generator) ? result[0] : PhpValue.Null;
}
else
{
var result = new PhpArray(count > 0 ? count : 0);
if (RandomSubset(array.Keys, result, count, PhpMath.Generator))
{
//result.InplaceCopyOnReturn = true;
return PhpValue.Create(result);
}
else
{
return PhpValue.Null;
}
}
}