Как выбрать случайным образом из массива?

В верхнем и следующем PHP 7.1 вы сможете это сделать ( Принято rfc для отрицательных смещений строки ):

Я позволю вам угадать output.

Кроме того, я добавил это в код производительности xenonite с этими результатами:

substr () взял 7.0334868431091seconds

занял 2,3111131191254 секунд

Прямой доступ к строке занял 1.7971360683441 секунд

532
задан the Tin Man 19 December 2011 в 18:44
поделиться

1 ответ

Просто используйте Array # sample :

[:foo, :bar].sample # => :foo, or :bar :-)

Он доступен в Ruby 1.9.1+. Чтобы иметь возможность использовать его с более ранней версией Ruby, вы могли потребовать "backports / 1.9.1 / array / sample" .

Обратите внимание, что в Ruby 1.8.7 он существует под неудачным именем choice ; он был переименован в более поздней версии, поэтому вам не следует его использовать.

Хотя в данном случае это бесполезно, sample принимает числовой аргумент, если вам нужно несколько отдельных выборок.

1095
ответ дан 22 November 2019 в 22:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: