添加写入无法使用谷歌存储

时间:2017-09-24 10:00:54

标签: php google-app-engine google-cloud-storage

我试图通过谷歌应用程序引擎托管的PHP脚本将Android应用程序的日志附加到谷歌存储中的文件中。

PHP SCRIPT

<?php
  header("Access-Control-Allow-Origin: *");
  $file_path = 'gs://s3674204-storage/logs.txt';


  if ( 0 == filesize( $file_path) || file_exists($file_path) == false ){
        $handle = fopen($file_path, 'w') or die('Cannot open file:  '.$file_path);
        fwrite($handle, "Label,x,y,z".PHP_EOL);
        fclose($handle);
  }


  $final = $_POST['result'];
  $final = json_decode( $final, true );
  $label = array_keys($final);
  $coords = $final[$label[0]];

  $data = $label[0].",".$coords['x'].",".$coords['y'].",".$coords['z'];

  $myfile = file_put_contents($file_path,$data.PHP_EOL , FILE_APPEND | LOCK_EX);

 ?>

第一次,正在创建文件,但它无法对同一文件追加写入。

file_put_contents返回false

代码在xampp服务器上正常运行。谷歌存储有什么问题?

1 个答案:

答案 0 :(得分:0)

Objects in Google Cloud Storage are immutable,表示您无法附加或编辑它们。您必须使用新内容完全覆盖该文件。