#Twitter 時代、#Facebook の投稿を取得して自動的にツイートするプログラムを作ったことがある。このブログの記事がマストドンで文字化けしていた件で、長文を短くするコードに問題がありそうだということで、私は何らかの対策をしていたのだろうかと、昔のコードを確認してみたら、よく分からないが、長文を短くするのに次のコードを使っていたらしい。
“(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_substr — 文字列の一部を得る説明
mb_substr(
string$string
,
int$start
,
?int$length
=null
,
?string$encoding
=null
): string文字数に基づきマルチバイト対応の substr() 処理を行います。位置は、
string
の始めから数えられます。 最初の文字の位置は 0、2 番目の文字の位置は 1、といったようになります。
“
PHP: mb_substr – Manual
https://www.php.net/manual/ja/function.mb-substr.php
その他、頻繁に”utf-8″を指定している。
また、次のコードもたくさんある。これはたぶん、文字化けとは関係ない。
“(PHP 4, PHP 5, PHP 7, PHP 8)
htmlspecialchars — 特殊文字を HTML エンティティに変換する
“
PHP: htmlspecialchars – Manual
https://www.php.net/manual/ja/function.htmlspecialchars.php
ネット情報を見ながら作ったコードなんだけど、文字化け対策をしていたのかなぁ?
昔過ぎて思い出せない。
コメント
このブログの記事がマストドンで文字化けしていた件で、長文を短くするコードに問題がありそうだと推測したのだが、文章を短くするコードの他に、リンクや文字サイズなどhtml形式の文章をtext形式にするコードが必要なはず。その過程で問題が生じたのかもしれない。