正则实现方式:(根据unicode语言范围实现,所以必须保证字符编码为unicode)
/**
* 是否为泰语
* @param $string
* @return bool
*/
function is_Thai($string)
{
if (preg_match('/^[\x{0e01}-\x{0e5b}]+$/u', trim($string)) === 1) {
//全是泰文
return 1;
} elseif (preg_match('/[\x{0e01}-\x{0e5b}]/u', trim($string)) === 1) {
//包含泰文
return 0;
}
return -1;
}
/**
* 是否为韩语,朝鲜语
* @param $string
* @return int
*/
function is_Korean($string)
{
if (preg_match('/^[\x{ac00}-\x{d7ff}]+$/u', $string) === 1) {
//全是韩文
return 1;
} elseif (preg_match('/[\x{ac00}-\x{d7ff}]/u', $string) === 1) {
//包含韩文
return 0;
}
return -1;
}
/**
* 是否为日语
* @param $string
* @return int
*/
function is_Japanese($string)
{
if (preg_match('/^[\x{ac00}-\x{4e00}]+$/u', $string) === 1) {
//全是日文
return 1;
} elseif (preg_match('/[\x{0800}-\x{4e00}]/u', $string) === 1) {
//包含日文
return 0;
}
return -1;
}