Skip to content

Commit b57a1eb

Browse files
author
dogstar
committed
composer update kernal v2.20.0; notorm v2.12.1
1 parent 009633a commit b57a1eb

5 files changed

Lines changed: 49 additions & 26 deletions

File tree

vendor/composer/installed.json

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -132,17 +132,17 @@
132132
},
133133
{
134134
"name": "phalapi/kernal",
135-
"version": "2.19.0",
136-
"version_normalized": "2.19.0.0",
135+
"version": "2.20.0",
136+
"version_normalized": "2.20.0.0",
137137
"source": {
138138
"type": "git",
139139
"url": "https://github.com/phalapi/kernal.git",
140-
"reference": "bc39c3824cd431dfa3abfc02ffb827cf278d43ec"
140+
"reference": "6e8e923dd85e09ef3863d4fec46a8bf41a363c73"
141141
},
142142
"dist": {
143143
"type": "zip",
144-
"url": "https://api.github.com/repos/phalapi/kernal/zipball/bc39c3824cd431dfa3abfc02ffb827cf278d43ec",
145-
"reference": "bc39c3824cd431dfa3abfc02ffb827cf278d43ec",
144+
"url": "https://api.github.com/repos/phalapi/kernal/zipball/6e8e923dd85e09ef3863d4fec46a8bf41a363c73",
145+
"reference": "6e8e923dd85e09ef3863d4fec46a8bf41a363c73",
146146
"shasum": "",
147147
"mirrors": [
148148
{
@@ -155,7 +155,7 @@
155155
"phalapi/notorm": "2.*.*",
156156
"php": ">=5.3.3"
157157
},
158-
"time": "2022-12-02T07:38:36+00:00",
158+
"time": "2022-12-13T14:24:05+00:00",
159159
"type": "library",
160160
"installation-source": "source",
161161
"autoload": {
@@ -193,23 +193,23 @@
193193
],
194194
"support": {
195195
"issues": "https://github.com/phalapi/kernal/issues",
196-
"source": "https://github.com/phalapi/kernal/tree/2.19.0"
196+
"source": "https://github.com/phalapi/kernal/tree/2.20.0"
197197
},
198198
"install-path": "../phalapi/kernal"
199199
},
200200
{
201201
"name": "phalapi/notorm",
202-
"version": "2.10.0",
203-
"version_normalized": "2.10.0.0",
202+
"version": "2.12.1",
203+
"version_normalized": "2.12.1.0",
204204
"source": {
205205
"type": "git",
206206
"url": "https://github.com/phalapi/notorm.git",
207-
"reference": "337cac09d3563a325d574298b87c6a7a5f8f759f"
207+
"reference": "2ce376d106bf46496d68b7ebff56ead63f38d4a6"
208208
},
209209
"dist": {
210210
"type": "zip",
211-
"url": "https://api.github.com/repos/phalapi/notorm/zipball/337cac09d3563a325d574298b87c6a7a5f8f759f",
212-
"reference": "337cac09d3563a325d574298b87c6a7a5f8f759f",
211+
"url": "https://api.github.com/repos/phalapi/notorm/zipball/2ce376d106bf46496d68b7ebff56ead63f38d4a6",
212+
"reference": "2ce376d106bf46496d68b7ebff56ead63f38d4a6",
213213
"shasum": "",
214214
"mirrors": [
215215
{
@@ -221,7 +221,7 @@
221221
"require": {
222222
"php": ">=5.3.3"
223223
},
224-
"time": "2020-03-10T11:52:02+00:00",
224+
"time": "2022-12-13T10:02:46+00:00",
225225
"type": "library",
226226
"installation-source": "source",
227227
"autoload": {
@@ -248,6 +248,10 @@
248248
"notorm",
249249
"phalapi"
250250
],
251+
"support": {
252+
"issues": "https://github.com/phalapi/notorm/issues",
253+
"source": "https://github.com/phalapi/notorm/tree/2.12.1"
254+
},
251255
"install-path": "../phalapi/notorm"
252256
},
253257
{

vendor/composer/installed.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
'type' => 'project',
66
'install_path' => __DIR__ . '/../../',
77
'aliases' => array(),
8-
'reference' => '84a8ff68c60f826761ccaf0af9eb96af21eb5eca',
8+
'reference' => '009633a855fb3b714db1533f628549290efce7c0',
99
'name' => 'phalapi/phalapi',
1010
'dev' => true,
1111
),
@@ -29,21 +29,21 @@
2929
'dev_requirement' => false,
3030
),
3131
'phalapi/kernal' => array(
32-
'pretty_version' => '2.19.0',
33-
'version' => '2.19.0.0',
32+
'pretty_version' => '2.20.0',
33+
'version' => '2.20.0.0',
3434
'type' => 'library',
3535
'install_path' => __DIR__ . '/../phalapi/kernal',
3636
'aliases' => array(),
37-
'reference' => 'bc39c3824cd431dfa3abfc02ffb827cf278d43ec',
37+
'reference' => '6e8e923dd85e09ef3863d4fec46a8bf41a363c73',
3838
'dev_requirement' => false,
3939
),
4040
'phalapi/notorm' => array(
41-
'pretty_version' => '2.10.0',
42-
'version' => '2.10.0.0',
41+
'pretty_version' => '2.12.1',
42+
'version' => '2.12.1.0',
4343
'type' => 'library',
4444
'install_path' => __DIR__ . '/../phalapi/notorm',
4545
'aliases' => array(),
46-
'reference' => '337cac09d3563a325d574298b87c6a7a5f8f759f',
46+
'reference' => '2ce376d106bf46496d68b7ebff56ead63f38d4a6',
4747
'dev_requirement' => false,
4848
),
4949
'phalapi/phalapi' => array(
@@ -52,7 +52,7 @@
5252
'type' => 'project',
5353
'install_path' => __DIR__ . '/../../',
5454
'aliases' => array(),
55-
'reference' => '84a8ff68c60f826761ccaf0af9eb96af21eb5eca',
55+
'reference' => '009633a855fb3b714db1533f628549290efce7c0',
5656
'dev_requirement' => false,
5757
),
5858
'phalapi/qrcode' => array(

vendor/phalapi/kernal/src/functions.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
use PhalApi\Translator;
66

77
/**
8-
* 框架版本号
8+
* PhalApi框架 Kernal内核 版本号
99
*/
10-
defined('PHALAPI_VERSION') || define('PHALAPI_VERSION', '2.19.0');
10+
defined('PHALAPI_VERSION') || define('PHALAPI_VERSION', '2.20.0');
1111

1212
/**
1313
* 考虑再三,出于人性化关怀,提供要些快速的函数和方法

vendor/phalapi/kernal/tests/src/Database/NotORM_Test.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -377,4 +377,15 @@ public function testGetPdoAndExec() {
377377
$rs = $pdo->exec($sql);
378378
$this->assertEquals(1, $rs);
379379
}
380+
381+
public function testReplaceWithLiteral() {
382+
// 问号绑定
383+
$rows = $this->notorm->demo->where('id = ?', 1)->update(array('name' => new \NotORM_Literal('REPLACE(`name`, ?, ?)', 'from-name', 'to-new-name')));
384+
385+
// :name 绑定
386+
$rows = $this->notorm->demo->where('id = :id', [':id' => 1])->update(array('name' => new \NotORM_Literal('REPLACE(`name`, :fn, :tn)', [':fn' => 'from-name', ':tn' => 'to-new-name'])));
387+
388+
$this->assertTrue(true);
389+
}
390+
380391
}

vendor/phalapi/notorm/src/NotORM/Result.php

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ function insert_multi(array $rows, $isIgnore = false){
378378
$values[] = $this->quote($value);
379379
foreach($value as $val){
380380
if($val instanceof NotORM_Literal && $val->parameters){
381-
$parameters = array_merge($parameters, $val->parameters);
381+
$parameters = $this->mergeLiteralParamaters($parameters, $val->parameters);
382382
}
383383
}
384384
}
@@ -459,7 +459,7 @@ function update(array $data){
459459
// doesn't use binding because $this->parameters can be filled by ? or :name
460460
$values[] = "{$quoteChar}{$key}{$quoteChar} = " . $this->quote($val);
461461
if($val instanceof NotORM_Literal && $val->parameters){
462-
$parameters = array_merge($parameters, $val->parameters);
462+
$parameters = $this->mergeLiteralParamaters($parameters, $val->parameters);
463463
}
464464
}
465465
if($this->parameters){
@@ -509,6 +509,14 @@ protected function createLiteral($column, $number) {
509509
);
510510
}
511511

512+
/**
513+
* 合并NotORM_Literal的参数,让其支持:name的参数绑定方式
514+
*/
515+
protected function mergeLiteralParamaters($parameters, $literalParamaters) {
516+
$mergeArr = isset($literalParamaters[0]) && is_array($literalParamaters[0]) ? $literalParamaters[0] : $literalParamaters;
517+
return array_merge($parameters, $mergeArr);
518+
}
519+
512520
/**
513521
* 获取数据库字段的引号
514522
* @author dogstar 20170617
@@ -908,7 +916,7 @@ protected function execute(){
908916
$this->having
909917
), $this->order, $this->unionOrder) as $val){
910918
if(($val instanceof NotORM_Literal || $val instanceof self) && $val->parameters){
911-
$parameters = array_merge($parameters, $val->parameters);
919+
$parameters = $this->mergeLiteralParamaters($parameters, $val->parameters);
912920
}
913921
}
914922
try{

0 commit comments

Comments
 (0)