用PHP读取.txt文件

用PHP读取.txt文件,php,utf-8,Php,Utf 8,使用php,我必须读取一个txt文件(UTF-8格式),其中根据字符长度将值插入mysql数据库 这是我的剧本: if (($handle = fopen(DIRECTORY_FILE.'test.txt', "r")) !== FALSE) { while ($data = fgets($handle)) { $mod = (int)substr($data, 0,7); $cod = (int)substr($data,

使用php,我必须读取一个txt文件(UTF-8格式),其中根据字符长度将值插入mysql数据库

这是我的剧本:

if (($handle = fopen(DIRECTORY_FILE.'test.txt', "r")) !== FALSE) {
    while ($data = fgets($handle)) {                 
       $mod = (int)substr($data, 0,7);
       $cod = (int)substr($data, 10,3);
       $descr = trim(substr($data,13,255));
       $descr2 = trim(substr($data,268,255));
       $seq = (int)substr($data, 523,4);
       $codord = (int)substr($data, 527,20);           
    }
    fclose($handle);
}
在没有特殊字符之前,这种方法很有效

我注意到,当有一个度符号“°””时,它被计为2个长度,导致在读取txt时出错

如何确保计数正确


谢谢

哦……非常感谢:)