| 1 | <?php | 
  | 2 |  | 
  | 3 | require_once __DIR__ . "/fetchAll.php"; | 
  | 4 | require_once __DIR__ . "/calculaSqlDeAsignaciones.php"; | 
  | 5 |  | 
  | 6 | function select( | 
  | 7 |  PDO $pdo, | 
  | 8 |  string $from, | 
  | 9 |  array $where = [], | 
  | 10 |  string $orderBy = "", | 
  | 11 |  int $mode = PDO::FETCH_ASSOC, | 
  | 12 |  $opcional = null | 
  | 13 | ) { | 
  | 14 |  $sql = "SELECT * FROM $from"; | 
  | 15 |  | 
  | 16 |  if (sizeof($where) > 0) { | 
  | 17 |   $sqlDeWhere = calculaSqlDeAsignaciones(" AND ", $where); | 
  | 18 |   $sql .= " WHERE $sqlDeWhere"; | 
  | 19 |  } | 
  | 20 |  | 
  | 21 |  if ($orderBy !== "") { | 
  | 22 |   $sql .= " ORDER BY $orderBy"; | 
  | 23 |  } | 
  | 24 |  | 
  | 25 |  if (sizeof($where) === 0) { | 
  | 26 |   $statement = $pdo->query($sql); | 
  | 27 |   return fetchAll($statement, [], $mode, $opcional); | 
  | 28 |  } else { | 
  | 29 |   $statement = $pdo->prepare($sql); | 
  | 30 |   $parametros = calculaArregloDeParametros($where); | 
  | 31 |   return fetchAll($statement, $parametros, $mode, $opcional); | 
  | 32 |  } | 
  | 33 | } | 
  | 34 |  |