require_once __DIR__ . '/vendor/autoload.php';
use Tos\Exception\TosClientException;
use Tos\Exception\TosServerException;
use Tos\Model\PutObjectInput;
$region = 'your region';
$endpoint = 'your endpoint';
$ak = getenv('TOS_ACCESS_KEY');
$sk = getenv('TOS_SECRET_KEY');
$bucket = 'bucket-test';
$client = new TosClient([
'endpoint' => $endpoint,
$input = new PutObjectInput($bucket, $key, $data);
$output = $client->putObject($input);
echo 'put object succeed, request id: ' . $output->getRequestId() . PHP_EOL;
echo $output->getETag() . PHP_EOL;
echo $output->getHashCrc64ecma() . PHP_EOL;
} catch (TosClientException $ex) {
echo 'put object failed, message: ' . $ex->getMessage() . PHP_EOL;
} catch (TosServerException $ex) {
echo 'put object failed, code: ' . $ex->getErrorCode() . PHP_EOL;
echo $ex->getRequestId() . PHP_EOL;
echo $ex->getStatusCode() . PHP_EOL;
echo $ex->getMessage() . PHP_EOL;
} catch (\Exception $ex) {
echo 'put object unexpected exception, message: ' . $ex->getMessage() . PHP_EOL;