项目根目录使用 Composer
composer require baidubce/bce-sdk-php

在 Controller 中引入
<?php
require '../vendor/autoload.php';//这句不用,自动引入
use BaiduBce\Services\Bos\BosClient;
测试连接
public function baidu(){
$BOS_TEST_CONFIG =
array(
'credentials' => array(
'accessKeyId' => '684b94f7675142d79ed2bxxxxxxxxxxx',
'secretAccessKey' => '0ee6b11cc38445fc8xxxxxxxxxxxxx',
),
'endpoint' => 'https://todo.cdn.bcebos.com',
);
$client = new BosClient($BOS_TEST_CONFIG);
dump($client);
}
输出结果

上传文件测试
public function baidu(){
$BOS_TEST_CONFIG =
array(
'credentials' => array(
'accessKeyId' => '684b94f7675142d79ed2bxxxxxxxxxxx',
'secretAccessKey' => '0ee6b11cc38445fc8xxxxxxxxxxxxx',
'sessionToken' => ''
),
'endpoint' => 'https://todo.cdn.bcebos.com',
'stsEndpoint' => '',
);
$client = new BosClient($BOS_TEST_CONFIG);
$bucketName = 'path';
$a = $client->putObjectFromFile($bucketName, 'abc.png', 'tmp/x.png');
dump($a);
}


如果用的是百度的服务器,可能出现在线报错
[curl] 6: Could not resolve host: todo.cdn.bcebos.com; Unknown error [url]

DNS 的问题
vim /etc/resolv.conf
修改

但是修改 DNS 的方式会使无法使用内网传输,
所以需要将上传地址改为官方域名,不要用 CDN 加速域名,这样百度内网服务器之间网就可以妙传了
