七牛云存储PHP SDK报错Warning: file_put_contents

文 / @UTHEME

使用七牛云存储PHP SDK上传文件时,报错:Warning: file_put_contents(/.qiniu_phpsdk_hostscache.json),但上传文件成功。

根据错误提示找到Zone.php第149行和第150行:

$path = $this->hostCacheFilePath();
file_put_contents($path, json_encode($this->hostCache), LOCK_EX);

起初猜测网站目录没有写入权限,在设置读写权限后仍然报错,通过第149行代码找到第156和第157行:

$home = getenv('HOME');
return $home . '/.qiniu_phpsdk_hostscache.json';

测试了一下getenv(‘HOME’)没有输出,因此造成file_put_contents无法写入,于是将这两行代码替换为:

return __DIR__ . '/.qiniu_phpsdk_hostscache.json';

至此问题已解决。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。