Skip to content

Commit d1c0814

Browse files
committed
Merge pull request #65 from qiniu/develop
Release v6.1.7
2 parents fd9f03d + 91918a4 commit d1c0814

File tree

5 files changed

+33
-2
lines changed

5 files changed

+33
-2
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
## CHANGE LOG
22

3+
### v6.1.7
4+
5+
2014-2-19 issues [#64](https://github.com/qiniu/php-sdk/pull/64)
6+
7+
- 修复 PutExtra.Params 无效的问题
8+
39
### v6.1.6
410

511
2014-2-17 issues [#62](https://github.com/qiniu/php-sdk/pull/62)

qiniu/io.php

+10
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ function Qiniu_Put($upToken, $key, $body, $putExtra) // => ($putRet, $err)
3232
if ($putExtra->CheckCrc) {
3333
$fields['crc32'] = $putExtra->Crc32;
3434
}
35+
if ($putExtra->Params) {
36+
foreach ($putExtra->Params as $k=>$v) {
37+
$fields[$k] = $v;
38+
}
39+
}
3540

3641
$files = array(array('file', $fname, $body, $putExtra->MimeType));
3742

@@ -66,6 +71,11 @@ function Qiniu_PutFile($upToken, $key, $localFile, $putExtra) // => ($putRet, $e
6671
}
6772
$fields['crc32'] = sprintf('%u', $putExtra->Crc32);
6873
}
74+
if ($putExtra->Params) {
75+
foreach ($putExtra->Params as $k=>$v) {
76+
$fields[$k] = $v;
77+
}
78+
}
6979

7080
$client = new Qiniu_HttpClient;
7181
return Qiniu_Client_CallWithForm($client, $QINIU_UP_HOST, $fields, 'multipart/form-data');

qiniu/resumable_io.php

+6
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,12 @@ function Qiniu_Rio_Mkfile($self, $host, $key, $fsize, $extra) // => ($putRet, $e
7070
$url .= '/mimeType/' . Qiniu_Encode($extra->MimeType);
7171
}
7272

73+
if (!empty($extra->Params)) {
74+
foreach ($extra->Params as $k=>$v) {
75+
$url .= "/" . $k . "/" . Qiniu_Encode($v);
76+
}
77+
}
78+
7379
$ctxs = array();
7480
foreach ($extra->Progresses as $prog) {
7581
$ctxs []= $prog['ctx'];

tests/IoTest.php

+7-2
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,12 @@ public function testPutFile()
2222
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
2323
$upToken = $putPolicy->Token(null);
2424
$putExtra = new Qiniu_PutExtra();
25+
$putExtra->Params = array('x:test'=>'test');
2526
$putExtra->CheckCrc = 1;
2627
list($ret, $err) = Qiniu_PutFile($upToken, $key, __file__, $putExtra);
2728
$this->assertNull($err);
2829
$this->assertArrayHasKey('hash', $ret);
30+
$this->assertArrayHasKey('x:test', $ret);
2931
var_dump($ret);
3032

3133
list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
@@ -43,9 +45,12 @@ public function testPut()
4345

4446
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
4547
$upToken = $putPolicy->Token(null);
46-
list($ret, $err) = Qiniu_Put($upToken, $key, "hello world!", null);
48+
$putExtra = new Qiniu_PutExtra();
49+
$putExtra->Params = array('x:test'=>'test');
50+
list($ret, $err) = Qiniu_Put($upToken, $key, "hello world!", $putExtra);
4751
$this->assertNull($err);
4852
$this->assertArrayHasKey('hash', $ret);
53+
$this->assertArrayHasKey('x:test', $ret);
4954
var_dump($ret);
5055

5156
list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
@@ -132,7 +137,7 @@ public function testPut_exclusive()
132137
$this->assertNull($err);
133138
list($ret, $err) = Qiniu_PutFile($upToken, $key, __file__, null);
134139
$this->assertNull($ret);
135-
$this->assertEquals($err->Err, 'file exists');
140+
$this->assertEquals($err->Code, 614);
136141
var_dump($err);
137142

138143
list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);

tests/RioTest.php

+4
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,12 @@ public function testPut()
3232
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
3333
$upToken = $putPolicy->Token(null);
3434
$putExtra = new Qiniu_Rio_PutExtra($this->bucket);
35+
$putExtra->Params = array('x:test'=>'test');
3536
$reader = new MockReader;
3637
list($ret, $err) = Qiniu_Rio_Put($upToken, $key, $reader, 5, $putExtra);
3738
$this->assertNull($err);
3839
$this->assertEquals($ret['hash'], "Fnvgeq9GDVk6Mj0Nsz2gW2S_3LOl");
40+
$this->assertEquals($ret['x:test'], "test");
3941
var_dump($ret);
4042

4143
list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
@@ -54,10 +56,12 @@ public function testLargePut()
5456
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
5557
$upToken = $putPolicy->Token(null);
5658
$putExtra = new Qiniu_Rio_PutExtra($this->bucket);
59+
$putExtra->Params = array('x:test'=>'test');
5760
$reader = new MockReader;
5861
list($ret, $err) = Qiniu_Rio_Put($upToken, $key, $reader, QINIU_RIO_BLOCK_SIZE + 5, $putExtra);
5962
$this->assertNull($err);
6063
$this->assertEquals($ret['hash'], "lgQEOCZ8Ievliq8XOfZmWTndgOll");
64+
$this->assertEquals($ret['x:test'], "test");
6165
var_dump($ret);
6266

6367
list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);

0 commit comments

Comments
 (0)