これはansiではなくUTFまたはHTMLエンティティ文字エンコーディングを使用する理由の1つです。 UTFを使用すると、これらの文字(および他の言語の文字)を保存および表示したり、他の言語/文字セットでこれらの文字を入力したときに検索を処理したりすることができます。
代わりに、あなたが使用することを選択したすべての奇妙な文字セットに対して「変換」を書くことができます。それでも、これらを変換することは可能です - あなたの時間に本当に価値があるかどうかを判断するだけです。
送信した文字は、サンセリフの数学的ボールド文字と呼ばれます。リストhere at w3.orgが見つかります。同様に、標準的で傾斜した斜めの大胆なバリエーションがあります(そのページの上部にある前後のリンクを使用してください)。
大文字小文字を小文字に切り替える(小数点に32を加算する、またはchr(ord(x)+32)
)とは異なり、数学の太字から小文字にすべての文字を切り替えるために使用できる小数点は設定されません各文字グループのANSIに相当します。同様に、ord()とchr()はこれらの文字に対しては機能しません。
例:あなたが正しい小文字を与える120205を引い、従って= 120211
65 - - Aは65 120276である、= 120205
97 120276である
は120302であり、Aは97 120302でありますしかし、同じことはうまくいかないでしょう。つまり、キャラクターがどの文字セット(数学的な太字、斜めの数学的なものなど)であるかを判断し、それが属するサブセット(a-z、A-Z、0-9)を特定し、それを修正するために計算した対応するオフセットを使用する必要があります。これを行うには、サポートされている変換文字セットに収まる文字をすべてのツイートのすべての文字でチェックし、それらの文字を変換する必要があります。
数学的な太字のみを使用して多数のつぶやきがある場合、それは価値があるかもしれませんが、あらゆる種類の潜在的な文字を含むことができる大きなつぶやきセットをインポートする場合は、作業。
価値があると思われる場合は、最初に行う必要があることは、APIから受け取っている生の文字エンコーディングを見て、それを変換する必要があるかどうか、次に文字の配列を使用する文字セット、その部分集合の値の範囲を使用する、またはその他の方法。また、それらの文字をどのようにスキャンするかを決める必要があります。
あなたの質問に対する答えは、それらを変換することができますが、あなたの状況や詳細は、それが価値があるかどうか、どのように達成するかを判断することです。あなたのために書かれたものではありません。
どのデータベースですか?テーブル構造、具体的には使用している文字セット/照合とは何ですか?これは文字セットの問題のようです。それはあなたのPHPクライアントスクリプト内で、テーブルのフィールドにストレージのためのUTF - 8を使用する必要があるようだ。この質問を参照してください:http://stackoverflow.com/questions/8274972/official-encoding-used-by-twitter-streaming-api-is-it-utf-8 – gview
たとえば、 var_dump(ord( "')) ; // 240を返します。 var_dump(ord( 's')); // return 115 –
これらはユニコード文字で、特に 'U + 1D400'から' U + 1D7FF'までの 'MATHEMATICAL SANS-SERIF BOLD SMALL'です。 –