| @@ 39-43 (lines=5) @@ | ||
| 36 | return FALSE; |
|
| 37 | } |
|
| 38 | $ord2 = ord($chr{2}); |
|
| 39 | if ( $ord0 >= 224 && $ord0 <= 239 ) { |
|
| 40 | return ($ord0-224)*4096 |
|
| 41 | + ($ord1-128)*64 |
|
| 42 | + ($ord2-128); |
|
| 43 | } |
|
| 44 | ||
| 45 | if ( !isset($chr{3}) ) { |
|
| 46 | trigger_error('Short sequence - at least 4 bytes expected, only 3 seen'); |
|
| @@ 50-56 (lines=7) @@ | ||
| 47 | return FALSE; |
|
| 48 | } |
|
| 49 | $ord3 = ord($chr{3}); |
|
| 50 | if ($ord0>=240 && $ord0<=247) { |
|
| 51 | return ($ord0-240)*262144 |
|
| 52 | + ($ord1-128)*4096 |
|
| 53 | + ($ord2-128)*64 |
|
| 54 | + ($ord3-128); |
|
| 55 | ||
| 56 | } |
|
| 57 | ||
| 58 | if ( !isset($chr{4}) ) { |
|
| 59 | trigger_error('Short sequence - at least 5 bytes expected, only 4 seen'); |
|
| @@ 63-69 (lines=7) @@ | ||
| 60 | return FALSE; |
|
| 61 | } |
|
| 62 | $ord4 = ord($chr{4}); |
|
| 63 | if ($ord0>=248 && $ord0<=251) { |
|
| 64 | return ($ord0-248)*16777216 |
|
| 65 | + ($ord1-128)*262144 |
|
| 66 | + ($ord2-128)*4096 |
|
| 67 | + ($ord3-128)*64 |
|
| 68 | + ($ord4-128); |
|
| 69 | } |
|
| 70 | ||
| 71 | if ( !isset($chr{5}) ) { |
|
| 72 | trigger_error('Short sequence - at least 6 bytes expected, only 5 seen'); |
|