public function NumericArgument::query in Drupal 10
Same name and namespace in other branches
- 8 core/modules/views/src/Plugin/views/argument/NumericArgument.php \Drupal\views\Plugin\views\argument\NumericArgument::query()
- 9 core/modules/views/src/Plugin/views/argument/NumericArgument.php \Drupal\views\Plugin\views\argument\NumericArgument::query()
1 method overrides NumericArgument::query()
- UidRevision::query in core/
modules/ node/ src/ Plugin/ views/ argument/ UidRevision.php
File
- core/
modules/ views/ src/ Plugin/ views/ argument/ NumericArgument.php, line 89
Class
- NumericArgument
- Basic argument handler for arguments that are numeric. Incorporates break_phrase.
Namespace
Drupal\views\Plugin\views\argumentCode
public function query($group_by = FALSE) {
$this
->ensureMyTable();
if (!empty($this->options['break_phrase'])) {
$break = static::breakString($this->argument, FALSE);
$this->value = $break->value;
$this->operator = $break->operator;
}
else {
$this->value = [
$this->argument,
];
}
$placeholder = $this
->placeholder();
$null_check = empty($this->options['not']) ? '' : " OR {$this->tableAlias}.{$this->realField} IS NULL";
if (count($this->value) > 1) {
$operator = empty($this->options['not']) ? 'IN' : 'NOT IN';
$placeholder .= '[]';
$this->query
->addWhereExpression(0, "{$this->tableAlias}.{$this->realField} {$operator}({$placeholder})" . $null_check, [
$placeholder => $this->value,
]);
}
else {
$operator = empty($this->options['not']) ? '=' : '!=';
$this->query
->addWhereExpression(0, "{$this->tableAlias}.{$this->realField} {$operator} {$placeholder}" . $null_check, [
$placeholder => $this->argument,
]);
}
}