私は現在、メッセージを受け取り、100文字程度に分割して各部分を送信するスクリプトを開発しています。preg_split - 新しい行
しかし、私の元の文字列には "\ n"という行があり、これはpreg_splitに問題を引き起こしています。これは、あらかじめ成熟した(たとえば100文字前に)分割されています。
1)メッセージ(「ジョン・スミスからメッセージ」の最初の部分:これで、私は3つの事を気づいた、今
$sMessage = "Msg from John Smith \n".
"SUBJ: Hello! \n".
"This is the bulk of the message and can be well over 200 or 300 characters long. \n".
"To reply, type R 131, then ur msg.";
$split = preg_split('/(.{0,100})\s/',
$sMessage,
0,
PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
array_shift($split);
$count = count($split);
foreach ($split as $key => $message) {
$part = sprintf("(%d/%d) %s", $key+1, $count, $message);
echo $part;
echo "<br>";
}
:ここ
は、私が現在働いているものです)も配列に含まれません。
2)新しい行(\ n)は文字列を早く切断するようです。
3)奇妙なことに、メッセージの最後の行(「To reply」など)で、最後の単語(「msg。」)を切り捨て、それを新しい行に追加します。文章を読むことがあります。
これについての助けがあれば助かります!
しかし、私は各 "100"文字列を別々に送ることができるように、各パーツを配列の別々の部分にする必要があります。ワードラップを使用すると、それはまだすべて1つの文字列です。どのように複数の文字列に分けることができますか? – Dodinas