为数组中的每个条目循环运行mysql查询

时间:2018-11-14 20:16:26

标签: php

我不是程序员,实际上可以在配置下面的查询时使用一些帮助,以便该查询将针对数组中的每个元素运行,最后将查询到的数据添加到“ mArray”中。

以下是我正在运行的查询的两个示例。我还有很多这样的方法,因此将所有ID包含在数组中并根据数组元素的数量运行foreach循环会更加实用。

  $sth = mysqli_query($conn, "SELECT * FROM {$tableName} WHERE ID = 'List1'");
  $list1Array = array();
  while($r = mysqli_fetch_array($sth)) {
    For ($n = 1; $n <= $CI_NOYEARS; $n++){
        $list1Array['data'][] = $r[$n];
    }
  }

  $sth = mysqli_query($conn, "SELECT * FROM {$tableName} WHERE ID = 'List2'");
  $list2Array = array();
  while($r = mysqli_fetch_assoc($sth)) {
      For ($n = 1; $n <= $CI_NOYEARS; $n++){
        $list2Array['data'][] = $r[$n];
    }
  }

  $mArray = array();
  $mArray['list1'] = $list1Array;
  $mArray['list2'] = $list2Array;

我一直在尝试使用以下简单数组和foreach语句创建此文件。但是,我似乎无法完成这项工作。非常感谢您的帮助。

  $idArray  = array(
    "List1",
    "List2",
  );

  foreach($idArray as $val) {
    $sth = mysqli_query($conn, "SELECT * FROM {$tableName} WHERE ID = $val");
    $yearsArray = array(); // Not sure what to do here
    while($r = mysqli_fetch_array($sth)) {
      For ($n = 1; $n <= $CI_NOYEARS; $n++){
        $yearsArray['data'][] = $r[$n]; // Again not sure what to do here
      }
    }
  }

0 个答案:

没有答案