示例#1
0
 private function deleteResByTopicIDArray($badTopicList)
 {
     if (empty($badTopicList)) {
         return true;
     }
     require_once dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR . 'application' . DIRECTORY_SEPARATOR . 'third_party' . DIRECTORY_SEPARATOR . 'qiniu' . DIRECTORY_SEPARATOR . 'rs.php';
     if (!empty($badTopicList)) {
         foreach ($badTopicList as $key => $topic) {
             $resUrl = $topic['resUrl'];
             if (!empty($resUrl)) {
                 $qn = getQNFromUrl($resUrl);
                 Qiniu_SetKeys(JY_QN_accessKey, JY_QN_secretKey);
                 $client = new Qiniu_MacHttpClient(null);
                 $err = Qiniu_RS_Move($client, $qn['bucket'], $qn['key'], JY_QN_bucket_recycle, $qn['key']);
                 if ($err !== null && $err->Code != 612) {
                     $this->topic->insertBadTopic($topic['id'], $resUrl, $err->Code);
                     return false;
                 } else {
                     return true;
                 }
             }
         }
     }
     return true;
 }
示例#2
0
 public function testDeleteMoveCopy()
 {
     $key2 = 'testOp2' . getTid();
     $key3 = 'testOp3' . getTid();
     Qiniu_RS_Delete($this->client, $this->bucket, $key2);
     Qiniu_RS_Delete($this->client, $this->bucket, $key3);
     $err = Qiniu_RS_Copy($this->client, $this->bucket, $this->key, $this->bucket, $key2);
     $this->assertNull($err);
     $err = Qiniu_RS_Move($this->client, $this->bucket, $key2, $this->bucket, $key3);
     $this->assertNull($err);
     $err = Qiniu_RS_Delete($this->client, $this->bucket, $key3);
     $this->assertNull($err);
     $err = Qiniu_RS_Delete($this->client, $this->bucket, $key2);
     $this->assertNotNull($err, "delete key2 false");
 }
示例#3
0
 /**
  * Rename a file
  *
  * @param $path
  * @param $newpath
  * @return bool
  */
 public function rename($path, $newpath)
 {
     $err = Qiniu_RS_Move($this->getClient(), $this->bucket, $path, $this->bucket, $newpath);
     return $err === null;
 }
示例#4
0
    var_dump($err);
} else {
    echo "Success! \n";
}
# @endgist
# @gist delete
$err = Qiniu_RS_Delete($client, $bucket, $key1);
echo "\n\n====> Qiniu_RS_Delete result: \n";
if ($err !== null) {
    var_dump($err);
} else {
    echo "Success! \n";
}
# @endgist
# @gist move
$err = Qiniu_RS_Move($client, $bucket, $key2, $bucket, $key1);
echo "\n\n====> Qiniu_RS_Move result: \n";
if ($err !== null) {
    var_dump($err);
} else {
    echo "Success! \n";
}
# @endgist
# @gist entrypath1
$e1 = new Qiniu_RS_EntryPath($bucket, $key1);
# @endgist
# @gist entrypath2
$e2 = new Qiniu_RS_EntryPath($bucket, $key2);
# @endgist
# @gist entrypath3
$key3 = $key1 . '3';
示例#5
0
 public function move($oldKey, $newKey, $newBucket = null)
 {
     if ($newBucket === null) {
         $newBucket = $this->bucket;
     }
     $err = Qiniu_RS_Move($this->client, $this->bucket, $oldKey, $newBucket, $newKey);
     if ($err !== null) {
         throw new QiniuMoveException($err->Err, $err->Code, $key);
     } else {
         return true;
     }
 }
示例#6
0
 /**
  * 移动文件到目标位置
  * @param string $opath 被移动的文件路径
  * @param string $path 目标位置(可能是同一api内或跨api,这两种情况分开处理)
  * @return icosdatas
  */
 public function CopyTo($opath, $path, $iscopy)
 {
     static $i = 0;
     $i++;
     $oarr = self::parsePath($opath);
     $client = self::init($opath);
     $data = self::getMeta($opath);
     switch ($data['type']) {
         case 'folder':
             //创建目录
             //exit($arr['path'].'===='.$data['name']);
             if ($re = IO::CreateFolder($path, $data['name'])) {
                 if (isset($re['error']) && intval($re['error_code']) != 31061) {
                     $data['success'] = $arr['error'];
                 } else {
                     $data['newdata'] = $re['icoarr'];
                     $data['success'] = true;
                     //echo $opath.'<br>';
                     $contents = self::listFilesAll($client, $opath);
                     $value = array();
                     foreach ($contents as $key => $value) {
                         if ($value['path'] != $opath) {
                             $data['contents'][$key] = self::CopyTo($value['path'], $re['folderarr']['path']);
                         }
                         $value = array();
                     }
                 }
             } else {
                 $data['success'] = 'create folder failure';
             }
             break;
         default:
             if ($arr['bz'] == $oarr['bz']) {
                 //同一个api时
                 $arr = self::parsePath($path . $data['name']);
                 $err = Qiniu_RS_Move($client, $arr['bucket'], $arr['object'], $oarr['bucket'], $oarr['object']);
                 if ($err !== null) {
                     $data['success'] = $err->Code . ':' . $err->Err;
                 } else {
                     $data['newdata'] = self::getMeta($path . $data['name']);
                     $data['success'] = true;
                 }
             } else {
                 if ($re = IO::multiUpload($opath, $path, $data['name'])) {
                     if ($re['error']) {
                         $data['success'] = $re['error'];
                     } else {
                         $data['newdata'] = $re;
                         $data['success'] = true;
                     }
                 }
             }
             break;
     }
     return $data;
 }