web-dev-qa-db-ja.com

PHPでGoogle Spreadsheets APIにアクセスするにはどうすればよいですか?

Google Developer Google Spreadsheets APIのドキュメント から始めて、「多数のクライアントライブラリがさまざまな言語で提供されています」とわかりましたが、GoogleはJavaと.NET。PHPライブラリの場合、Zend GDataの使用をお勧めします。そのため、 Zend GData repo に向かい、Zendは、 GDataコンポーネントは廃止され、使用するには PHP用のGoogle APIクライアントライブラリ です。そのライブラリはSpreadsheets APIでは機能しません。そのため、最初に使用した元のページに戻る必要があります。

だから、誰もが見返りをしているようです。 PHP Google Spreadsheetからのデータを要求および処理するコードを記述する必要があります。それを行うにはどうすればよいですか?確認することなく、同様の投稿またはページにリンクしないでください。それらは100%最新のものであり、私は何時間もの間、古くて非推奨の依存関係でいっぱいの巨大な混乱した投稿をふるいにかけています。

19
Jo Sprague

PHP Googleスプレッドシートクライアントライブラリ を使用できます。

OAuth2経由で認証するには、 PHP用のGoogle APIクライアントライブラリ も使用する必要があります。開発者向けドキュメントはgithubページにリンクされています。

11
aman

このページのヒントとリンクをありがとう、私はphpでgoogleスプレッドシートを読むために私がやったことを共有したいと思いました。スプレッドシートにはjson形式でアクセスでき、apiまたはzendフレームワークやgdataライブラリを使用する必要はありません。 PhPはjsonを非常に簡単に処理でき、サードパーティのライブラリに依存しないため、私が到達できる最も優れたソリューションでした。

以下は、json形式のスプレッドシートを取得するためのサンプルリンクです。

https://spreadsheets.google.com/feeds/list/key/1/public/full?alt=json

スプレッドシートが非公開の場合でも、認証手順に従って、トークンを取得してページにアクセスする必要があります。私の場合、スプレッドシートは公開されていました。

また、フィードリストまたはセルベースでスプレッドシートにアクセスできます(URLのlistcellに置き換えます)

ブラウザでリンクを試し、jsonの結果を確認できます。

6
apadana

(2016年8月)

この過去5月の時点で、より良い解決策があります...

もうお金を渡す必要はありません:

  1. GData APIs (したがってZend GData)は、前世代のGoogle APIです。すべてのGData APIが非推奨となっているわけではありませんが、 allnewerGoogle API donotGoogleデータプロトコル を使用します。
  2. "新しい" Google Sheets API v4 (GDataではありません))があります。新しい Sheets API を使用するには、他の人がすでに述べているように、 PHP用のGoogle APIクライアントライブラリ を取得する必要があります。最新のAPIは、以前のAPIよりもはるかに強力で柔軟性があります。以下に、1つ コードサンプル を示します。 Pythonに「アレルギー」でない場合は、 a videodifferentで作成しました。APIを紹介する少し長い例を使用して、より詳細に説明しましたitsコードに a blogpost を介して学習できます。

Sheets APIを使用すると、スプレッドシートとシートの作成、データのアップロードとダウンロード、さらに一般的な意味では、ユーザーインターフェースを使用しているかのようにプログラムからシートにアクセスできます(固定行の作成、セルのフォーマット、行のサイズ変更/列、ピボットテーブルの追加、グラフの作成など)ですが、アップロードとダウンロード、インポートとエクスポート(アップロードとダウンロードと同じですが、Google Apps形式との変換と同じです)などのファイルレベルのアクセスを実行するには、- Google Drive API 代わりに。

2
wescpy