| @@ 179-199 (lines=21) @@ | ||
| 176 | $context->appendParams($args); |
|
| 177 | ||
| 178 | } |
|
| 179 | public function setArgs(Context $context, $values){ |
|
| 180 | $set = []; |
|
| 181 | $params = []; |
|
| 182 | foreach ($values as $k=>$v){ |
|
| 183 | $k = DB::wrap($k); |
|
| 184 | if(is_a($v, Raw::class)){//直接拼接sql,不需要转义 |
|
| 185 | $set[]= "$k=".$v->get(); |
|
| 186 | }else{ |
|
| 187 | $set[]= "$k=?"; |
|
| 188 | $params[]=$v; |
|
| 189 | } |
|
| 190 | } |
|
| 191 | if($this->first){ |
|
| 192 | $this->first = false; |
|
| 193 | $context->appendSql('SET '.implode(',', $set)); |
|
| 194 | $context->appendParams($params); |
|
| 195 | }else{ |
|
| 196 | $context->appendSql(','.implode(',', $set),false); |
|
| 197 | $context->appendParams($params); |
|
| 198 | } |
|
| 199 | } |
|
| 200 | private $first=true; |
|
| 201 | } |
|
| 202 | class OrderByImpl |
|
| @@ 563-583 (lines=21) @@ | ||
| 560 | $context->appendParams($args); |
|
| 561 | ||
| 562 | } |
|
| 563 | public function setArgs($context, $values){ |
|
| 564 | $set = []; |
|
| 565 | $params = []; |
|
| 566 | foreach ($values as $k=>$v){ |
|
| 567 | $k = DB::wrap($k); |
|
| 568 | if(is_a($v, Raw::class)){//直接拼接sql,不需要转义 |
|
| 569 | $set[]= "$k=".$v->get(); |
|
| 570 | }else{ |
|
| 571 | $set[]= "$k=?"; |
|
| 572 | $params[]=$v; |
|
| 573 | } |
|
| 574 | } |
|
| 575 | if($this->first){ |
|
| 576 | $this->first = false; |
|
| 577 | $context->appendSql('ON DUPLICATE KEY UPDATE '.implode(',', $set)); |
|
| 578 | $context->appendParams($params); |
|
| 579 | }else{ |
|
| 580 | $context->appendSql(','.implode(',', $set),false); |
|
| 581 | $context->appendParams($params); |
|
| 582 | } |
|
| 583 | } |
|
| 584 | private $first=true; |
|
| 585 | } |
|
| 586 | ||