2

Smartsheet をサーバーに (.xls として) 保存したいと考えています。しかし、私は常にjsonコードで満たされた.xlsを取得します。json_decode(..) を使用し、.xls が完全に空の場合、「file_put エラー」が発生します。デスクトップでcurlを使用すると、必要なものがすべて含まれた適切な.xlsが得られます。

$baseURL = "https://api.smartsheet.com/1.1";
$headers = array("Authorization: Bearer ".$inputToken);
.
.
array_push($headers,'"Accept: application/vnd.ms-excel" -o  tmpfile.xls --insecure');
$curlSession = curl_init($sheetDetail_url);
curl_setopt($curlSession, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curlSession, CURLOPT_RETURNTRANSFER, TRUE);
$smartsheetData = curl_exec($curlSession);

if (curl_errno($curlSession))
{
    echo "Oh No! Error: " . curl_error($curlSession);
}else{
    // Assign response to PHP object
    $sheetsObj = json_decode($smartsheetData);
    // close curlSession
    curl_close($curlSession);
}
$file1="tmpfile.xls";
if(!(file_put_contents($file1, $sheetsObj))){
    echo "file_put error";
} 

あなたが私を助けてくれることを願っています。ありがとう

4

1 に答える 1