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

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

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

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

PHP

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

Q&A

0回答

1275閲覧

twitter botでのrequire_onceの使い方

GeorgeYamagata

総合スコア8

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

PHP

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

0グッド

1クリップ

投稿2018/07/31 12:30

編集2022/01/12 10:55

番号リスト現在twitter botで、現在の時刻を呟くbotを作ろうとしています。
そこで、vagrant仮想環境のcentOSでは、実行することができました。

centOSにインストールしてあるPHPのバージョンはPHP 5.6.31です



コードは下記のサイトを参考に致しました。
【2016年最新②】TwitterBot用のPHP作成とCron設定方法
https://harublog.popnavi.net/programming/twitterbot_php_cron/


twitterbotを動かす、PHPファイルはhttps://github.com/abraham/twitteroauth ここからダウンロードして使っております


こちらが書いたtwitter_bot.phpコードです。

twitter_bot.php
コード


行1<?php
行2 require_once('twitteroauth/autoload.php');
行3 require_once('twitteroauth/src/TwitterOAuth.php');
行4 require_once(dirname(FILE) . '/config.php');
use Abraham\TwitterOAuth\TwitterOAuth;

$date = getdate(); switch($date['wday']){ case 0: $weekd = "日曜日"; case 1: $weekd = "月曜日"; case 2: $weekd = "火曜日"; case 3: $weekd = "水曜日"; case 4: $weekd = "木曜日"; case 5: $weekd = "金曜日"; case 6: $weekd = "土曜日"; } //今日の残り日数 //$leave_today = 24 - $date['hours']; //print "本日は残り"."$leave_today"."時間です"."\n"; $message = "現在は{$date['year']}年{$date['mon']}月{$date['mday']}日"."$weekd"."{$date['hours']}時{$date['minutes']}分です。"."\n"; //print $message;

 // つぶやく
$connection = new TwitterOAuth(consumer_key, consumer_secret, access_token, access_token_secret);
$request = $connection->post("statuses/update", array("status"=> $message ));
?>


そこで、次にxserverのドメイン名の下のpublic_htmlにcentOSで実行できたtwitter-bot-original1をそのまま移動させて、
twitter-bot-original1(ディレクトリ) ここから実行するようにしている
/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitter_bot.php
/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/config.php
/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitteroauth/autoload.php
/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/src/TwitterOAuth.php
TwitterOAuth.php


cron設定のコマンドに
/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitter_bot.php
を書き込んで、コマンドを実行した事を知らせる為に
gmailを設定し、
実行したところ



・/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitter_bot.php: 行 1: ?php: そのようなファイルやディレクトリはありません

・/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitter_bot.php: ・行 2: 予期しないトークン `'twitteroauth/autoload.php'' 周辺に構文エラーがあります

・/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitter_bot.php: 行 2: `    require_once('twitteroauth/autoload.php');'
と言う文が返ってきて、


twitter_bot.phpの


<?php require_once('twitteroauth/autoload.php'); require_once('twitteroauth/src/TwitterOAuth.php'); require_once(dirname(__FILE__) . '/config.php'); use Abraham\TwitterOAuth\TwitterOAuth; 
のrequire_onceの部分でエラーが起こっていると思ったので、 
1require_once(dirname(__FILE__) .'twitteroauth/autoload.php’);
 2require_once( __DIR__ . 'twitteroauth/autoload.php'); 3require_once( '/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitteroauth/autoload.php'); 
1~3まで試したのですが、 1だと 予期しないトークン `dirname' 周辺に構文エラーがあります 2だと 予期しないトークン `__DIR__' 周辺に構文エラーがあります 
 3だと 予期しないトークン '/home/サーバーID/ドメイン名/public_html/twitter-bot-original1/twitteroauth/autoload.php' 周辺に構文エラーがあります とgmailにエラー文が返信されてきます。 xserverのPHPバージョンは7.0.30です。 
require_onceの構文に間違いがあると思うのですが、どこが問題だと思われますか?
 申し訳ありませんがよろしくお願い致します

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

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

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

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

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

m.ts10806

2018/07/31 12:32

べた書き過ぎてコードも階層も分かりづらいです。コードはコードブロックに、階層は全角スペースやコードブロックなども使って、状況が伝わりやすいようにしてください。
GeorgeYamagata

2018/07/31 13:08

ご返信、ご指摘ありがとうございます。修正いたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問