You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么我用于在box.com上复制文件夹的PHP Curl代码无法正常运行?

PHP Curl 文件夹操作返回1的问题解决

返回值为1是配置参数导致的现象,原因和修复方案如下:

  • 核心原因:CURLOPT_RETURNTRANSFER配置为false时,curl_exec执行成功会返回布尔值true,PHP 中布尔值true转为字符串后就是1,此时接口的响应内容会被直接输出,不会作为curl_exec的返回值。
  • 潜在语法问题:你代码中CURLOPT_POSTFIELDS直接写了JSON字面量,不符合PHP数组赋值语法,需要把JSON字符串用引号包裹,更推荐用数组转JSON的方式生成请求体,避免变量解析错误和格式问题。

修正后的代码示例

// 构造请求参数
$postData = [
    'name' => 'Newfolder',
    'parent' => [
        'id' => $id
    ]
];
$postFields = json_encode($postData);
$len = strlen($postFields);

$options = [
    CURLOPT_SSL_VERIFYPEER  => true,
    CURLOPT_VERBOSE         => false,
    CURLOPT_HEADER          => false,
    CURLINFO_HEADER_OUT     => true,
    CURLOPT_RETURNTRANSFER  => true, // 修改为true,让curl_exec返回接口响应内容
    CURLOPT_FOLLOWLOCATION  => false,
    CURLOPT_HTTPHEADER      => [
        'Authorization: Bearer CODE',
        'Content-Type: application/json',
        'Content-Length: '.$len,
    ],
    CURLOPT_POST => 1,
    CURLOPT_POSTFIELDS => $postFields
];

$ch = curl_init($url);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);

// 可选:补充错误排查逻辑
if (curl_errno($ch)) {
    $error = curl_error($ch);
    // 按需处理请求错误
}
curl_close($ch);

内容的提问来源于stack exchange,提问作者Sangeetha Menon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:15:11