Я хочу перемешивать элементы массивов и получить одинаковые значения с помощью рандом, но в этом случае shuffle не поможет. Вобщем код: Код (Text): $arr1 = ['green', 'red', 'blue']; $arr2 = ['зеленый', 'красный', 'синий']; for ($i = 0; $i < 2; $i++){ echo $arr1[$i]; #red echo $arr2[$i]; #красный } А когда обновляешь страницу for ($i = 0; $i < 2; $i++){ echo $arr1[$i]; #green echo $arr2[$i]; #зеленый } Должен рандомно получить один элемент из массива $arr1, например red, и красный из массива $arr2. Каждый раз, когда вы обновляете страницу, вы должны получать другой результат. Но один и тот ключ из массивов. Знаю я плохо объясняю но думаю вы поймете.
Код (Text): $arr1 = ['green', 'red', 'blue']; $arr2 = ['зеленый', 'красный', 'синий']; $random = rand(0, count($arr1) - 1); echo $arr1[$random]; #red echo $arr2[$random]; #красный
Добрый день! shuffle поможет. Но один и тот ключ из массивов, м.б., например, 0: PHP: $arr1 = ['green', 'red', 'blue']; $arr2 = ['зеленый', 'красный', 'синий']; shuffle($arr1); shuffle($arr2); echo $arr1[0]," ",$arr2[0]; /* test: red красный blue синий green зеленый */ Удачи!
Нет. Так не сработает. Если нужен аналог задуманного вами, то можно как-то так PHP: <?php $arr1 = ['green', 'red', 'blue']; $arr2 = ['зеленый', 'красный', 'синий']; $keys = range(0, count($arr1) -1 ); //array_keys() как вариант shuffle($keys); foreach ($keys AS $value) { echo $arr1[$value].' - '.$arr2[$value].'<br>'; }
Добрый день! Мой код работает, также как Ваш PHP: $random = rand(0, count($arr1) - 1); echo $arr1[$random]; #red echo $arr2[$random]; #красный Я показал, пары значений, которые выдаются при перезагрузки скрипта. Разница в том, что в Вашем коде вычисляется рандомный ключ, в моём shuffle рандомно переставляет элементы массивов, а ключ "один и тот ключ из массивов"(см. solo27) ключ=0 Результат такой же как у Вас PHP: echo $arr1[0]; #red echo $arr2[0]; #красный Удачи!
Нет. Хотя... ОК. Я могу предположить, что в какой-то из прошлых версий PHP перемешивание двух одинаковых по длине массивов было идентичным. Маловероятно, но возможно... Сейчас это не будет работать 100%, алгоритм был изменен Это легко проверить. Песочница с выбором версий
Да, хорошая вещь, но в полной мере её ценность осознается когда умеешь и без неё. Начинающим её лучше не советовать, пускай циклы освоит.