| @@ 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 |
|
| @@ 541-561 (lines=21) @@ | ||
| 538 | $context->appendParams($args); |
|
| 539 | ||
| 540 | } |
|
| 541 | public function setArgs($context, $values){ |
|
| 542 | $set = []; |
|
| 543 | $params = []; |
|
| 544 | foreach ($values as $k=>$v){ |
|
| 545 | $k = DB::wrap($k); |
|
| 546 | if(is_a($v, Raw::class)){//直接拼接sql,不需要转义 |
|
| 547 | $set[]= "$k=".$v->get(); |
|
| 548 | }else{ |
|
| 549 | $set[]= "$k=?"; |
|
| 550 | $params[]=$v; |
|
| 551 | } |
|
| 552 | } |
|
| 553 | if($this->first){ |
|
| 554 | $this->first = false; |
|
| 555 | $context->appendSql('ON DUPLICATE KEY UPDATE '.implode(',', $set)); |
|
| 556 | $context->appendParams($params); |
|
| 557 | }else{ |
|
| 558 | $context->appendSql(','.implode(',', $set),false); |
|
| 559 | $context->appendParams($params); |
|
| 560 | } |
|
| 561 | } |
|
| 562 | private $first=true; |
|
| 563 | } |
|
| 564 | ||