is_utf8 in PHP

By: rodrigo Emailed: 1671 times Printed: 2148 times    

Latest comments
By: rohit kumar - how this program is work
By: Kirti - Hi..thx for the hadoop in
By: Spijker - I have altered the code a
By: ali mohammed - why we use the java in ne
By: ali mohammed - why we use the java in ne
By: mizhelle - when I exported the data
By: raul - no output as well, i'm ge
By: Rajesh - thanx very much...
By: Suindu De - Suppose we are executing

I've been working on a is_utf8 function and wanted to post it here, in addition to others i also took in consideration the 5000 char bug:

<?php 
define('_is_utf8_split',5000); 

function is_utf8($string) { // v1.01 
    if (strlen($string) > _is_utf8_split) { 
        // Based on: http://mobile-website.mobi/php-utf8-vs-iso-8859-1-59 
        for ($i=0,$s=_is_utf8_split,$j=ceil(strlen($string)/_is_utf8_split);$i < $j;$i++,$s+=_is_utf8_split) { 
            if (is_utf8(substr($string,$s,_is_utf8_split))) 
                return true; 
        } 
        return false; 
    } else { 
        // From http://w3.org/International/questions/qa-forms-utf-8.html 
        return preg_match('%^(?: 
                [x09x0Ax0Dx20-x7E]            # ASCII 
            | [xC2-xDF][x80-xBF]             # non-overlong 2-byte 
            |  xE0[xA0-xBF][x80-xBF]        # excluding overlongs 
            | [xE1-xECxEExEF][x80-xBF]{2}  # straight 3-byte 
            |  xED[x80-x9F][x80-xBF]        # excluding surrogates 
            |  xF0[x90-xBF][x80-xBF]{2}     # planes 1-3 
            | [xF1-xF3][x80-xBF]{3}          # planes 4-15 
            |  xF4[x80-x8F][x80-xBF]{2}     # plane 16 
        )*$%xs', $string); 
    } 
} 
?>


PHP Home | All PHP Tutorials | Latest PHP Tutorials

Sponsored Links

If this tutorial doesn't answer your question, or you have a specific question, just ask an expert here. Post your question to get a direct answer.



Bookmark and Share

Comments(0)


Be the first one to add a comment

Your name (required):


Your email(required, will not be shown to the public):


Your sites URL (optional):


Your comments:



More Tutorials by rodrigo
is_utf8 in PHP

More Tutorials in PHP
PHP code to import from CSV file to MySQL
PHP code to write to a CSV file from MySQL query
PHP code to write to a CSV file for Microsoft Applications
Convert XML to CSV in PHP
Password must include both numeric and alphabetic characters - Magento
PHP file upload (Large Files)
PHP file upload prompts authentication for anonymous users
PHP file upload with IIS on windows XP/2000 etc
Error: Length parameter must be greater than 0
Multiple File Upload in PHP using IFRAME
Resume or Pause File Uploads in PHP
Exception in module wampmanager.exe at 000F15A0 in Windows 8
Handling file locks in PHP
HTML table output using Nested for loops in PHP
Count occurrences of a character in a String in PHP

More Latest News
Most Viewed Articles (in PHP )
Different versions of PHP - History and evolution of PHP
Input Validation in PHP
PHP code to write to a CSV file from MySQL query
public, protected, and private Properties in PHP
preg_split() and explode() in PHP
Using Codeigniter for PHP application development
Parent: child process exited with status 3221225477 -- Restarting
Convert a hex string into a 32-bit IEEE 754 float number in PHP
isset() function in PHP
Encrypting files using GnuPG (GPG) via PHP
func_get_arg() and func_get_args() functions in PHP
use() in PHP
Here-docs (<<<) in PHP
Traversing Arrays Using list() and each() in PHP
Binary Operators in PHP
Most Emailed Articles (in PHP)
PHP code to write to a CSV file for Microsoft Applications
Counting Lines, Paragraphs, or Records in a File using pc_split_paragraphs() in PHP
Reading word by word from a file in PHP
PHP code to import from CSV file to MySQL
PHP code to write to a CSV file from MySQL query
Convert XML to CSV in PHP
Using list() in PHP
Constants in PHP
Decrypting files using GnuPG (GPG) via PHP
Perl's Encoding::FixLatin equivalent in PHP
Password must include both numeric and alphabetic characters - Magento
Here-docs (<<<) in PHP
if Statements in PHP
for Loops in PHP
public, protected, and private Properties in PHP