_show = false; return; } parent::Condition($column_name, $argument, $operation, $pipe); $this->_value = $argument->getValue(); } function getArgument(){ if(!$this->show()) return; return $this->argument; } /** * change string without value * @return string */ function toStringWithoutValue(){ $value = $this->argument->getUnescapedValue(); if(is_array($value)){ $q = ''; foreach ($value as $v) $q .= '?,'; if($q !== '') $q = substr($q, 0, -1); $q = '(' . $q . ')'; } else { // Prepared statements: column names should not be sent as query arguments, but instead concatenated to query string if($this->argument->isColumnName()) { $q = $value; } else { $q = '?'; } } return $this->pipe . ' ' . $this->getConditionPart($q); } /** * @return boolean */ function show(){ if(!isset($this->_show)){ if(!$this->argument->isValid()) $this->_show = false; if($this->_value === '\'\'') $this->_show = false; if(!isset($this->_show)){ return parent::show(); } } return $this->_show; } } ?>