- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
<?php
function mb_fgets( &$file, $buf_size=1024 ){
$buf = fgets( $file, $buf_size );
//Прочитали до конца файла - обрабатывать нечего
if( fEoF($file) ) return $buf;
$byte = ord(substr( $buf, -1, 1 ));
if( $byte<=0x7F ) return $buf;
$count=1;
while( $byte & 0xC0 != 0xC0 ){
$count++;
$byte = ord(substr( $buf, -$count, 1 ));
}
$mask = 0x40;
$bits_count = 2;
while( $byte & $mask ){
$mask = $mask >> 1;
$bits_count++;
}
return $buf . fgets( $file, $bits_count-$count );
}
Комментарии (0) RSS
Добавить комментарий