'', 'access_key_secret'=>'', 'disk_id'=>'', 'region_id'=>'cn-hangzhou', ]; if ($_SERVER['REMOTE_ADDR']!='127.0.0.1') die(); require 'vendor/autoload.php'; use AlibabaCloud\Client\AlibabaCloud; use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; // Download:https://github.com/aliyun/openapi-sdk-php // Usage:https://github.com/aliyun/openapi-sdk-php/blob/master/README.md AlibabaCloud::accessKeyClient($config['access_key_id'], $config['access_key_secret']) // use STS Token // AlibabaCloud::stsClient('', '', '') ->regionId($config['region_id']) ->asDefaultClient(); try { //查询快照 $result = AlibabaCloud::rpc() ->product('SWAS-OPEN') // ->scheme('https') // https | http ->version('2020-06-01') ->action('ListSnapshots') ->method('POST') ->host("swas.{$config['region_id']}.aliyuncs.com") ->options([ 'query' => [ 'RegionId' => $config['region_id'], ], ]) ->request(); //echo json_encode($result->toArray()); $name=(date("w")==1?'week-':'day-'); //删除多余快照 foreach($result['Snapshots'] as $i=>$snapshot){ if ($snapshot['SourceDiskId']==$config['disk_id'] && stripos($snapshot['SnapshotName'],$name)===0){ $result = AlibabaCloud::rpc() ->product('SWAS-OPEN') // ->scheme('https') // https | http ->version('2020-06-01') ->action('DeleteSnapshot') ->method('POST') ->host("swas.{$config['region_id']}.aliyuncs.com") ->options([ 'query' => [ 'RegionId' => $config['region_id'], 'SnapshotId' => $snapshot['SnapshotId'], ], ]) ->request(); } } //新建快照 $result = AlibabaCloud::rpc() ->product('SWAS-OPEN') // ->scheme('https') // https | http ->version('2020-06-01') ->action('CreateSnapshot') ->method('POST') ->host("swas.{$config['region_id']}.aliyuncs.com") ->options([ 'query' => [ 'RegionId' => $config['region_id'], 'DiskId' => $config['disk_id'], 'SnapshotName' => $name.date("Y-m-d-H-i-s"), ], ]) ->request(); //echo json_encode($result->toArray()); } catch (ClientException $e) { echo $e->getErrorMessage() . PHP_EOL; } catch (ServerException $e) { echo $e->getErrorMessage() . PHP_EOL; }