質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Gmail

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

652閲覧

gmailAPIに関して、初期設定でエラー

KatsumiKurokawa

総合スコア22

Gmail

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2018/09/26 07:57

現在、gmailAPIのPHP版を使って、gmailに送信されたメール情報を
取得しようとしています。

https://developers.google.com/gmail/api/quickstart/php

上記サイトの通りにAPIキーを取得し、APIキーと同じ場所に、
サンプルプログラムであるquickstart.phpというデータを、
text.phpという名前で実行したところ、XAMPP上では下記のような
エラーメッセージが出てしまいます。

This application must be run on the command line.
Fatal error: Uncaught Error: Class 'Google_Client' not found in C:\xampp\htdocs\Twitter\text.php:16 Stack trace: #0 C:\xampp\htdocs\Twitter\text.php(62): getClient() #1 {main} thrown in C:\xampp\htdocs\Twitter\text.php on line 16

コマンドラインの部分は意味が分かったのですが、Google_Clientというクラスは、
元のquickstart.phpにも記載はありませんし、こちらがミスしているとも思えません。

現在、githubでも質問してみているのですが、英語サイトのため、わかりづらくて
こちらでも投げてみました。

どなたか、わかる方がいたら、至急お助けいただけないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

composer でAPIのライブラリをいれました?

投稿2018/09/26 08:11

taka2063

総合スコア307

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KatsumiKurokawa

2018/09/26 08:13

はい。composerを使って、ライブラリを入れました。
taka2063

2018/09/26 08:25

そうすうると実行したところに以下のファイルがありますでしょうか? vendor/google/apiclient/src/Google/Client.php 存在すれば、以下のファイルをインクルードすると呼べるはずです。(サンプルでも入っていますが) vendor/autoload.php たぶん、ファイルがないのかな?
KatsumiKurokawa

2018/09/26 23:58 編集

ファイルがないみたいですね。vendor下のgoogleフォルダーからごっそりありませんでした。 他にも、composerを使った場合、入ってないものがないか、確認の方法を知りませんか? また、先程教えていただいたファイルの場所も教えていただけると幸いです。
taka2063

2018/09/26 23:59

正しくライブラリがインストールされてないですね。 以下のコマンドが失敗してるようです。 composer require google/apiclient:^2.0 上記コマンドをXAMPPとは関係ない新規フォルダで実行すると正しくvendorが作成されるでしょうか? 既存のconposer.json も質問欄へ載せたほうがわかるかもしれません。
KatsumiKurokawa

2018/09/27 00:02 編集

えっと、このコマンドは、私のユーザーフォルダ直下で起動させたのですが。 composer.jsonのバージョンでも変わる可能性があるのですね。
taka2063

2018/09/27 00:06

vendorフォルダがあるところで実行しないと駄目ですし、composer.jsonの中身を書き換えますね。 そしたら、ユーザフォルダの下に以下のファイルがあるのではないですか? vendor/google/apiclient/src/Google/Client.php ユーザーフォルダはXAMPPからは見えないですよね?XAMPPの開発環境にもvendorフォルダがあるならそこで実行しないといけないですね。
taka2063

2018/09/27 00:09

逆にユーザーフォルダにquickstart.phpを置いて実行すると基本的な動作確認はできるのでは? (パス)php quickstart.php
KatsumiKurokawa

2018/09/27 00:34 編集

先程、別のフォルダで実行してみたところ、上記ファイルが出てきました。 今から、実行して試してみますね。 実行してみたら、別のエラーは発生しましたが、最初のエラーはなくなりました。助かりました。
taka2063

2018/09/27 00:42

ライブラリは正しく呼べるようになったようで良かったです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問