<?php include_once __DIR__ . '/../include.php'; include_once __DIR__ . '/lib_example.php'; class CustomDegeneration implements \ClickHouseDB\Query\Degeneration { private $bindings = []; public function bindParams(array $bindings) { $this->bindings = $bindings; } public function process($sql) { if (sizeof($this->bindings)) { foreach ($this->bindings as $key => $value) { $sql = str_ireplace('%' . $key . '%', $value, $sql); } } return str_ireplace('XXXX', 'SELECT', $sql); } } $config = ['host' => '192.168.1.20', 'port' => '8123', 'username' => 'default', 'password' => '']; $db = new ClickHouseDB\Client($config); print_r($db->select('SELECT 1 as ping')->fetchOne()); // CustomConditions $db->addQueryDegeneration(new CustomDegeneration()); // strreplace XXXX=>SELECT print_r($db->select('XXXX 1 as ping')->fetchOne()); // SELECT 1 as ping print_r($db->select('XXXX 1 as %ZX%', ['ZX' => 'ping'])->fetchOne());