объединить / объединить два массива mysqli_fetch_assoc

#php #mysql #sql #mysqli

#php #mysql #sql #mysqli

Вопрос:

у меня есть 2 массива из mysqli_fetch_assoc из 2 разных БД с 2 разных серверов. мой основной вторичный сервер отключен от объединения и отключен root в моем офисе, поэтому я решаю вызвать manualall через php fetch assoc .. вот мой результат в таблице

 NO. USERID  USERNAME    USERSTATUS  other   NAME
1   1   daffa   1   2   Sugeng
2   2   meito   1   4   Sugeng lagi
 

НЕТ. ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ ИМЯ ПОЛЬЗОВАТЕЛЯ Строка USERSTATUS из $new_array1
другое ИМЯ из $ new_array2

тогда вот мой код

 $i = 1;
while(($new_array1 = mysqli_fetch_assoc( $result1)) amp;amp; ($new_array2 = mysqli_fetch_assoc( $result2))){
  echo '
      <tr>
          <td>'.$i.'</td>
          <td>'.$new_array1['userid'].'</td>
          <td>'.$new_array1['username'].'</td>
          <td>'.$new_array1['userstatus'].'</td>
          <td>'.$new_array2['other'].'</td>
          <td>'.$new_array2['NAME'].'</td>
      </tr>
  ';
  $i  ;
}
 

но есть еще 2 массива, как объединить 2 массива из выборки assoc? я хочу сделать его единым массивом, а затем отобразить данные

Комментарии:

1. Это звучит как JOIN , если эти данные связаны. Если нет, вам нужно объединить их с помощью PHP.

2. Примечание: Объектно-ориентированный интерфейс to mysqli значительно менее подробный, что упрощает чтение и аудит кода, и его нелегко спутать с устаревшим mysql_query интерфейсом, где отсутствие одного i может вызвать проблемы. Пример: $db = new mysqli(…) и $db->prepare("…") процедурный интерфейс является артефактом эпохи PHP 4 и не должен использоваться в новом коде. Кроме того, процедурный интерфейс имеет менее строгую проверку ошибок и отчеты, что затрудняет усилия по отладке.

3. это разные базы данных на разных серверах, объединение не может быть выполнено. кроме того, федеративный движок отключен office, в любом случае, чтобы объединить эти массивы?

4. Вы должны извлечь все строки в обоих наборах, а затем соединить их вместе с помощью какого-либо сопоставления. Дешевый способ сделать это — преобразовать его в ассоциативный массив с ключом, который вы сопоставляете, чтобы вы могли это сделать $a[$key] , $b[$key] и они будут связаны.

5. кстати, каковы ваши критерии объединения двух разных таблиц, поступающих из двух разных источников в любом случае? просто выровнять их по номерам строк? ну, вы не можете сделать это таким образом с помощью приведенного выше кода, вам нужно будет извлекать оба по отдельности и комбинировать результаты с помощью php.