Twitter APIが更新されて、ブログの過去記事を自動的にツイートするPHPが使えなくなってしまったので、新しいAPIに乗せ換えた時にハマった点を備忘録的に投稿します。今回はTwitterOAuthライブラリを利用する際の ‘expecting variable (T_VARIABLE) エラー’ の対処法です。
expecting variable (T_VARIABLE) エラー
APIを利用する準備として、ツイッターのアカウントを開発者アカウントとして申請する必要があります。
Twitter APIを利用するには、先に開発者アカウントの申請が必要です。詳しい内容は別記事をご覧ください。
例えば、次のようなコードでTwitterOAuthライブラリを利用した際に、エラーになりました。
$apiKey = API_KEY;
$apiSecret = API_SECRET;
$accessToken = ACCESS_TOKEN;
$accessTokenSecret = ACCESS_TOKEN_SECRET;
require_once('vendor/autoload.php');
use Abraham\TwitterOAuth\TwitterOAuth;
$twitterOAuth = new TwitterOAuth($apiKey, $apiSecret, $accessToken, $accessTokenSecret);
PHPが出力したエラーは、こんな感じ。
実際にエラーになっているライブラリ内の場所を確認すると、おそらくこの変数定義が原因のようです。
PHPバージョンの切り替え
最新のTwitterOAuthライブラリはPHPのバージョンが8以上が求められているため古いPHPのバージョンを利用している際にエラーが発生します。
cPanelが使えるのであれば、次の手順でPHPバージョンの確認と更新が行えます。
1. cPanelの[ソフトウェア|MultiPHP マネージャー]リンクをクリックします。
2.[ドメインごとに PHP バージョンを設定する]画面の、対象ドメインの[PHP バージョン]を確認します。
3. 更新する場合には[PHP バージョン]プルダウンリストから[PHP 8]以上を選択して対象のドメインを選択(チェックを入れる)して[適用]をクリックします。
4. [成功]メッセージが表示されるまで待ちます(更新に時間が掛かる場合があります)。
再度、TwitterOAuthを利用してエラーが改善されているか確認します。
まとめ
Twitter APIを利用する際に、” ‘syntax error, unexpected’, expecting variable (T_VARIABLE) エラー ” が表示される場合には、PHPのバージョンに起因している場合があります。
最新のTwitterOAuth などの外部ライブラリを利用している場合には、PHPのバージョンに依存している場合があるため、最新のバージョンのPHPに更新する必要があります。
TwitterOAuth を利用する際に” ‘syntax error, unexpected’, expecting variable (T_VARIABLE) エラー “が表示されて困っている人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。