MIOLO20
Carregando...
Procurando...
Nenhuma entrada encontrada
criteriacondition.class
Ir para a documentação deste ficheiro.
1<?php
2
4{
5 private $parts = array();
6
7 public function __construct()
8 {
9 }
10
11 public function getSize()
12 {
13 return count($this->parts);
14 }
15
16 public function addCriteria($criteria, $conjuntion = 'AND')
17 {
18 $this->parts[] = array($criteria,$conjuntion);
19 }
20
21 public function addOrCriteria($criteria)
22 {
23 $this->addCriteria($criteria, 'OR');
24 }
25
26 public function addAndCriteria($criteria)
27 {
28 $this->addCriteria($criteria, 'AND');
29 }
30
31 public function addCondition($condition)
32 {
33 $this->parts = array_merge($this->parts, $condition->parts);
34 }
35
36 public function getSql()
37 {
38 $sql = '';
39 $n = $this->getSize();
40
41 for ($i = 0; $i < $n; $i++)
42 {
43 if ($i != 0)
44 {
45 $sql .= " " . $this->parts[$i][1] . " ";
46 }
47
48 $criteria = $this->parts[$i][0];
49 $sql .= $criteria->getSql();
50 }
51
52 if ($n > 1)
53 $sql = "(" . $sql . ")";
54
55 return $sql;
56 }
57}
58?>
addCriteria($criteria, $conjuntion='AND')