Как добавить значения внутри переменной в массив

#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)];