@Blog{zip358.com}
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。
小 中 大
■ ■ ■ ■ ■ ■ ■
文字数[1837文字] この記事は2分18秒で読めます.
Twitter API V2では画像ツイートが出来ないと流れてきたので対処方法
この投稿は1年以上前に公開されました。 現在の情報とは異なる可能性がありますので、ご了承ください。
おはようございます。先日、Twitter API V2では画像ツイートが出来ないと流れてきたので対処方法を載せときます。Qiitaにも掲載していますが、こちらでも記載します。コードはいつまで使用出来るかは不明ですね、イーロン・マスクのサジカゲンで無料プランでは出来なくなる可能性を秘めています。今のところ、使用できるコードです。PHP8系では動きますがPHP7系は:mixedの部分を退けてあげないと動かないかもです。因みにPythonのサンプルコードが公式にはあったような気がします。
<?php
require_once "tw-config-v2.php";
require_once "vendor/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
class tw
{
public $connection = null;
public $media = null;
public function __construct()
{
$this->connection = new TwitterOAuth(APIKEY, APISECRET, ACCESSTOKEN, ACCESSTOKENSECRET);
}
/**
* イメージのエンドポイントを取得する v1.1 そのうち廃止されそう。
* @param $imageName
* @return boolean
*/
public function getImage($imageName = null): bool
{
if (empty($imageName)) {
return false;
}
$this->media = $this->connection->upload('media/upload', ['media' => "/var/www/html/tw/tmp/images/$imageName"]);
return true;
}
/**
* イメージ付きでツイート。
* @param $text
* @return mixed
*/
public function tweet($text = null): mixed
{
if (!empty($text) && isset($this->media->media_id_string)) {
$param = [
'text' => $text,
'media' => [
'media_ids' => [
$this->media->media_id_string
]
]
];
$this->connection->setApiVersion('2');
return $this->connection->post('tweets', $param, true);
}
return false;
}
}
if($argv[0]){
$tw = new tw();
if($tw->getImage("php2023.png.webp"))
{
$tw->tweet("これはテストです");
}
}
2677番目の投稿です/67 回表示されています.
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
最近よく読まれている記事(過去3ヶ月)
タグ
argv, bool, connection, construct, empty, getImage, isset, media', mixed, PARAM, qiita, quot, quot;vendor, return, tmp, tw, Tweet, use AbrahamTwitterOAuthTwitterOAuth, イーロン, サジカゲン,