| @@ 227-247 (lines=21) @@ | ||
| 224 | $context->appendParams($args); |
|
| 225 | ||
| 226 | } |
|
| 227 | public function setArgs(Context $context, $values){ |
|
| 228 | $set = []; |
|
| 229 | $params = []; |
|
| 230 | foreach ($values as $k=>$v){ |
|
| 231 | $k = DB::wrap($k); |
|
| 232 | if(is_a($v, Raw::class)){//直接拼接sql,不需要转义 |
|
| 233 | $set[]= "$k=".$v->get(); |
|
| 234 | }else{ |
|
| 235 | $set[]= "$k=?"; |
|
| 236 | $params[]=$v; |
|
| 237 | } |
|
| 238 | } |
|
| 239 | if($this->first){ |
|
| 240 | $this->first = false; |
|
| 241 | $context->appendSql('SET '.implode(',', $set)); |
|
| 242 | $context->appendParams($params); |
|
| 243 | }else{ |
|
| 244 | $context->appendSql(','.implode(',', $set),false); |
|
| 245 | $context->appendParams($params); |
|
| 246 | } |
|
| 247 | } |
|
| 248 | private $first=true; |
|
| 249 | } |
|
| 250 | class OrderByImpl |
|
| @@ 629-649 (lines=21) @@ | ||
| 626 | $context->appendParams($args); |
|
| 627 | ||
| 628 | } |
|
| 629 | public function setArgs($context, $values){ |
|
| 630 | $set = []; |
|
| 631 | $params = []; |
|
| 632 | foreach ($values as $k=>$v){ |
|
| 633 | $k = DB::wrap($k); |
|
| 634 | if(is_a($v, Raw::class)){//直接拼接sql,不需要转义 |
|
| 635 | $set[]= "$k=".$v->get(); |
|
| 636 | }else{ |
|
| 637 | $set[]= "$k=?"; |
|
| 638 | $params[]=$v; |
|
| 639 | } |
|
| 640 | } |
|
| 641 | if($this->first){ |
|
| 642 | $this->first = false; |
|
| 643 | $context->appendSql('ON DUPLICATE KEY UPDATE '.implode(',', $set)); |
|
| 644 | $context->appendParams($params); |
|
| 645 | }else{ |
|
| 646 | $context->appendSql(','.implode(',', $set),false); |
|
| 647 | $context->appendParams($params); |
|
| 648 | } |
|
| 649 | } |
|
| 650 | private $first=true; |
|
| 651 | } |
|
| 652 | ||