#php
#php
Вопрос:
$elements = array();
while($getrow = mysql_fetch_array($allquestionRes)) {
$elements[] = $getrow['q'];
}
$my_elements = implode(',',$elements); // For example Displays 658,659
$my_array = array($my_elements);
$to_remove = explode(',', $my_elements);
$result = array_diff($my_array,$to_remove);
$random = $result[array_rand($result)];
echo $random; // Output 658 or 659
Я хочу добавить значения implode и поместить их внутрь массива, а затем отобразить случайный результат, как указано в строках кода.
Комментарии:
1. можете ли вы объяснить это подробнее с ожидаемым результатом??
Ответ №1:
Вы можете упростить свой код следующим образом:
$elements = array();
while($getrow = mysql_fetch_array($allquestionRes)) {
$elements[] = $getrow['q']; // For example records 657,658,659...
}
$i = rand(0, (count($elements)-1));
$random = $elements[$i];
echo $random; // Output 657 or 658 or 659
Это должно решить проблему, основанную на вашем объяснении.
Комментарии:
1. Что я хочу отобразить случайный результат, используя строку implode для помещения в массив
2. @RazaBarlasMills вы можете просто сделать случайный выбор, я снова отредактирую свое решение для вас.
3. @RazaBarlasMills Проверьте мое решение еще раз. Это должно решить проблему
4. Позвольте мне попробовать это
5. Я просто хочу поместить $my_elements = implode(‘,’,$elements); внутри массива. Чтобы автоматически отобразить значения, а затем дифференцировать оба массива, $result = array_diff($my_array,$to_remove); $random = $result[array_rand($result)];