フロントの人の雑多メモ

PHPでTwitter APIを使って改行を含んでツイートする方法

PHPでTwitter APIを使って改行を含んでツイートする方法

PHPでTwitter APIを使ってツイートをする際

およそこのようなコードでツイートできますが

require __DIR__ . '\vendor\autoload.php';

use Abraham\TwitterOAuth\TwitterOAuth;

$TW_CK = 'xxxxx';
$TW_CS = 'xxxxx';
$TW_AT = 'xxxxx';
$TW_ATS = 'xxxxx';

// TwitterOAuthクラスのインスタンスを作成
$connect = new TwitterOAuth( $TW_CK, $TW_CS, $TW_AT, $TW_ATS );
// Twitter API v2. を利用する場合
$connect->setApiVersion('2');

//ツイート文
$tweet = '改行の\nテストです。';

$result = $connect->post(
	'tweets',['text' => $tweet],true
);

ツイート文に改行を入れたいとき、これではできません。

//ツイート文
$tweet = '改行の\nテストです。';

こうなってしまいます。

Twitter API ツイート 改行 \n

結論

こうします。

//ツイート文
$tweet = '改行の'."\n".'テストです。';

すると改行されました。

Twitter API ツイート 改行を入れる

メインの文章をシングルクォーテーション「'」で挟み
改行をダブルクォーテーション「"」で挟んで連結します。

JSとかでもたまに使う手法ですね。

ちなみに、その他のパターンでも検証したのですが

//ツイート文
$tweet = "ダブルとシングルを".'\n'."逆にしたパターン";

//ツイート文
$tweet = 'シングルのみの'.'\n'.'パターン';

//ツイート文
$tweet = "ダブルのみの"."\n"."パターン";

こちらは「\n」がそのまま出力されてしまい、上手くいきませんでした。

「私の環境では違った!」「もっといい方法がある!」などあればコメントで教えてください。

コメント

内容を確認の上、個人情報などは省いて掲載させていただきます。

直接送信されます。確認の上、「送信」してください。

シェア

Twitterでシェア Facebookでシェア LINEでシェア はてなブックマークでシェア