Filtros.php

<< Click to Display Table of Contents >>

Navigation:  Outros > CRUD com persistencia Orientada Objeto > persistencia >

Filtros.php

Previous pageReturn to chapter overviewNext page

<?php
 
namespace persistencia;
 
/**
 * Quando você precisar combinar grupos dentro de um Where exemplo (id = 5) or (id is null and data > current_date)
 *
 * @author Junior
 */
class Filtros {
 
    private $lista;
 
    public function __construct() {
        $this->lista = array();
    }
 
    public function add($filtro) {
        array_push($this->lista"(" . trim($filtro) . ") and ");
    }
 
    public function addOr($filtro) {
        array_push($this->lista"(" . trim($filtro) . ") or ");
    }
 
    public function __toString() {
 
        $ret = '';
 
        // percorre todos os filtros criados
        foreach ($this->lista as $filtro) {
            $ret .= $filtro;
        }
 
        // remove o ultimo "and"
        if ($ret) {
            $ret = substr($ret0, -4);
        }
 
        return $ret;
    }
}