私はUTF8ファイルを読み込み、ファイルから読み込んだデータを配列に格納しています。しかし、mysqlクエリでそのデータを使用すると、問題が発生しています。 int値(..)を使用する前に、すべてのint値を明示的に変換することを考えました。しかし、intval(utf8string)は私にゼロを与えています。次のコードPHP utf8 intval
は、予期しない出力が得られます。
//.....
var_dump($data[10]);
echo '|' . $data[10] . "|\n";
echo '|' . bin2hex($data[10]) . "|\n";
echo '|' . utf8_decode($data[10]) . "|\n";
echo '|' . intval(utf8_decode($data[10])) . "|\n";
echo '|' . intval($data[10]). "|\n"; exit
//.....
出力:
string(15) "2240000"
|2240000|
|003200320034003000300030003000|
|2240000|
|0|
|0|
、このようなデータから正しいINTVALを取得する方法任意のアイデア?
私はあなたが見ている結果を取得したいどのように理解していません。例に 'var_dump($ data [10]);'の結果を追加できますか? –
'bin2hex($ data [10])'を見せてください。 UTF-8でエンコードされた数字は、ASCIIと同じなので問題はありません。 – deceze
上記の両方の関数の出力を追加しました。 – workwise