phprs\ezsql\impls\OnDuplicateKeyUpdateImpl::setArgs PHP Метод

setArgs() публичный Метод

public setArgs ( $context, $values )
    public function setArgs($context, $values)
    {
        $set = [];
        $params = [];
        foreach ($values as $k => $v) {
            if (is_a($v, 'phprs\\ezsql\\Native')) {
                //直接拼接sql,不需要转义
                $set[] = "{$k}=" . $v->get();
            } else {
                $set[] = "{$k}=?";
                $params[] = $v;
            }
        }
        if ($this->first) {
            $this->first = false;
            $context->appendSql('ON DUPLICATE KEY UPDATE ' . implode(',', $set));
            $context->appendParams($params);
        } else {
            $context->appendSql(',' . implode(',', $set), false);
            $context->appendParams($params);
        }
    }
OnDuplicateKeyUpdateImpl