7

大文字と小文字を区別せずに、文字列が別の文字列内にあるかどうかを確認するために、 stripos関数を使用しています。

ここに問題があります:

stripos("ø", "Ø")

falseを返します。その間

stripos("Ø", "Ø")

trueを返します。

ご覧のとおり、この場合、関数は大文字と小文字を区別しない検索を実行しないようです。

この関数には、ÆæやÅåなどの文字でも同じ問題があります。これらはデンマークのキャラクターです。

4

4 に答える 4

9

mb_stripos()代わりに使用してください。文字セットを認識し、マルチバイト文字セットを処理します。stripos()は、ASCIIのみがあり、すべての文字が1バイトしかなかった古き良き時代からの遺物です。

于 2011-03-30T14:51:19.770 に答える
3

mb_striposが必要です。

于 2011-03-30T14:51:08.113 に答える
1

mb_striposがこれを処理します。

于 2011-03-30T14:54:34.100 に答える
1

他の解決策が言うように、最初にmb_stripos()を試してください。ただし、この関数を使用しても問題が解決しない場合は、phpファイルのエンコーディングを確認してください。UTF-8に変換して保存します。何時間もの研究の後、それは私にとってトリックでした。

于 2015-06-15T02:21:29.013 に答える